4

ほとんどの人は、末尾の空白は良い習慣ではないことに同意すると思います。多くのエディターが表示するか、自動的に削除します。

次の Python 関数を簡単な例として考えてみましょう。

空白の例のスクリーンショット

11 行目と 13 行目の余分な空白は間違っています。私が疑問に思っているのは10行目です。インデントを変更しない制御ブロック内の空白行には、先頭の空白が必要ですか?

私が使用したほとんどのエディターは、カーソルを前の行からのインデント レベルに保持するため、先頭の空白のない空白行を作成するには、追加の書式設定が必要です。ベストプラクティスは何ですか? 10行目に先頭の空白を入れる必要がありますか?

4

4 に答える 4

5

コードの実行に関しては、まったく違いはありません。私がPythonで最もよく見たのは、空白のあるものですが、一方が他方よりも客観的に優れていると本当に合理的に言える人はいないと思います。

于 2012-07-25T17:01:40.710 に答える
3

スタイルガイドを引用して、Pythonの例に固執して質問に答えようとします。

PEP-8から:

クラス内のメソッド定義は、1 行の空白行で区切られます。

ウィキペディアから(空行) :

空白行は、通常、ゼロ文字を含む行を指します (行末文字は数えません)。ただし、可視文字を含まない (空白のみで構成される) 行を指すこともあります。

ウィキペディアの定義を信じるなら、なぜゼロ文字が好まれるのか疑問に思うかもしれません。

1 つには、エディタで自動インデントが有効になっている場合でも、正当な理由もなく余分なバイトでファイルを埋めているだけです。

第二に、ゼロ文字の空白行の正規表現も同様に単純です。通常は '^$' と '^\s*$' のようなものです。

他の回答が指摘しているように、空白を入れても実行に違いはありません。そうする正当な理由はありませんが、ベストプラクティスはそれを省略してシンプルにすることだと思います. ゼロ文字の行が空白のある行とは異なる扱いを受ける状況を想像できますか? その言語でプログラミングするのは嫌だ。空白を入れることは、私にはバロックのように思えます。

于 2012-12-14T10:31:21.080 に答える
2

@PinkElephantsOnParadeが書いているように、実行に違いはありません。したがって、それは単に個人的な美的好みの問題です。

末尾の空白は悪い考えだと思うので、私自身、末尾の空白を表示するようにエディターを設定しました。したがって、10行目が強調表示され、常に顔を見つめます。誰もそれを望んでいないので、10行目に空白を含めるべきではないと私は主張します。(これは偶然にも、私のエディターであるemacsがこれを自動的に処理する方法です。)

于 2012-12-09T10:27:55.607 に答える
1

人それぞれですが、1 つの見方としては、コード スタイルは人間の可読性に関するものです。したがって、末尾の空白は、行の長さが既存の (自己課された) 制限 (例: 80 文字の制限) を超えた場合にのみ問題になります。

一方、エディターで一貫して空白を表示し、これが重要な場合は、(少なくとも一部の人にとっては) 空白を存在させる方が効率的であるため、個人的にはそこに保持します。ある時点でその行にコードを追加する場合は、空白を追加する必要はありません。

于 2012-12-13T02:23:10.070 に答える