[Python] Coding Style

mixiのPythonコミュのpythonらしい命名とは?というトピックにて、
参考になりそうなURLがUPされていたのでメモ。
時間見つけて熟読予定。

間違ったコードは間違って見えるようにする
PEP 8 — Style Guide for Python Code
wxPython Coding Guide

とりあえずPEP8だけざっくり読んだところ、8割ぐらいは守れてるかも、と思ったけど、
バーーーーーーッッッっと書き始めると全部崩壊www
もうちょい明確に自分ルール持っておいたほうがいざという時に良いかなぁ。

ともあれ、要熟読。

「[Python] Coding Style」への9件のフィードバック

  1. クラスのメソッドって、大文字で始めるべきかな、小文字で始めるべきかな。

    何だかまちまちで困ってます。

  2. > hajimeさん
    僕は小文字推奨派です!!
    なんとなく!!

  3. 自分も小文字〜〜。wxだけ変態な気がします。colourやし(笑

    PEP8の感想、参考になった所はいっぱいあるんでそれ以外の所での意見を・・・

    – パッケージ内部の import には、相対 import をしないことが強く推奨さ
    れている。常に絶対パッケージパスを使用する。

    絶対 import のほうが可搬性があり、一般に可読性が高い。

        ???絶対import のほうが可搬性があるってどういうこと?

    英語を母国語としない Pythonプログラマの方々へ。あなたの母国語を話さ
    ない人が、そのソースコードを決して読まないことを、120%確信できる場
    合を除いて、コメントは英語で書いていただきたい。

        お願いしろ(怒

      文末のピリオドの後には、スペースをふたつ配置する。

        なんで?

      mixedCase 方式は、既に広く使われているような文脈(たとえば
      threading.py)で、互換性を保つ場合にのみ許される。

        やだ。

      単純な公開データ属性には、複雑なアクセッサまたはミューテータメソッ
      ドではなく、属性の名前を公表するのが最善である。単純なデータ属性
      が、機能的なふるまいをするよう変更しなければならないとき、
      Pythhon が将来の拡張が容易な方法を提供していることを思い出そう。
      こんなときには、properties を使って、単純なデータ属性にアクセス
      する文法のまま、機能の実装を隠すことができる。

        これにはちょっと自分の意見があって、どのデータが外部から変更されるか
        わからいと可読性が下がるんでhoheローカルルールでデータ変更は関数を
        作ってそれをコールするようにしています。Pythonに染まった人は外部から
        バンバンデータ変更してます。

      注3: 名前修飾はみんなに好かれているわけではない。

        はい嫌い。

  4. >wxだけ変態
    さすが、お見通しですねw

    wxのクラスを継承した後、さて自分のメソッド追加するかって時にいつも困るんですよね。小文字貫くか、wxに合わすか。

  5. > hohehohe2さん
    wxは元々pythonのものじゃないから、そっちのルールに合わせた、って感じなんでしょうかね。
    にしてもやりづらいですが・・・w

    > 絶対 import のほうが可搬性があり〜
    これは非常に謎です。僕の場合、少なくともMaya用のスクリプトは全部相対importになっちゃってます。
    可搬性がある=同じ環境の構築が出来てたらモジュール名がぶつかる事が防げるから楽ですよ、ってぐらいのことなんでしょうか。

    >文末のピリオドの後には、スペースをふたつ配置する。
    え、、、なんか気持ち悪い、、、、

    > データ変更は関数を作って〜
    僕も大体そんな感じにしてます。
    世に言うgetter, setter、って感じの仕組み、なんだとおもいますが、getXXX()とかになってた方が、何やってるのかパッと見分かり易いですし、内部でなんか操作してからデータ渡すにしても、クラスの外には関係ないですし、とか。

    非常に参考になりました。
    僕もPEP8読んでみます。

    > hajimeさん
    wxのクラスを継承した時は最高に困りますね、、
    僕は確か継承したものに関しては大文字にして、その他は頑として小文字でwww

  6. むしろ、小文字で統一して、
    「大文字でスタートするメソッドはwxのオリジナルのもの」というルールと思い込んでしまえば
    これはこれで自分を納得させることができるかも、と思いました。

  7. >hajimeさん
    !!
    それは確かにアリかも。ナイスアイディア!

  8. # You should use two spaces after a sentence-ending period, since it makes
    # Emacs wrapping and filling work consistently.

    Emacsの改行処理が正しく働くそうです。うーん理にかなってるような、無茶苦茶なような・・・

    > これはこれで自分を納得させることができるかも、と思いました。
    同じ結論に・・・

  9. >hohehohe2さん
    > Emacsの改行処理
    な、なるほど、、そんな理由が、、
    でも僕はEmacsユーザーじゃないので、無視しても問題ない、、
    公開する際に、っていう話ならわかるんですが。

    というかEmacsの利点が未だに理解できてません。
    いや、理解は出来てます。
    でもCtrl+何か、とかAlt+何か、という操作になれることが出来ません、、
    うーん、Emacs、、、いつか仲良くなれるんだろうか、、、

    > > これはこれで自分を納得させることができるかも、と思いました。
    > 同じ結論に・・・じゃあ僕もそれで、、、

コメントを残す

メールアドレスが公開されることはありません。