532

Python コードの大きなブロックをコメントアウトするメカニズムはありますか?

現在、コードをコメントアウトする唯一の方法は、すべての行を で始めるか#、コードを三重引用符で囲むことです: """.

これらの問題は、すべての行の前に挿入するの#が面倒で"""、コメントとして使用したい文字列が生成されたドキュメントに表示されることです。

すべてのコメントを読んだ後、答えは「いいえ」のようです。

4

19 に答える 19

469

Python にはそのようなメカニズムはありません。#コメントをブロックするには、各行の先頭に aを追加します。詳細については、PEP 8を参照してください。ほとんどの Python IDE は、ハッシュ記号付きのブロック コメントを自動的に行うメカニズムをサポートしています。たとえば、私のマシンの IDLE では、Alt+3Alt+4です。

三重引用符は使用しないでください。あなたが発見したように、これはコメントをブロックしないドキュメント文字列用ですが、同様の効果があります。一時的にコメントアウトするだけなら、これは一時的な措置としては問題ありません。

于 2009-03-23T22:20:55.457 に答える
98

これに対する私が知っている唯一の治療法は、優れた編集者です。ごめん。

于 2009-03-23T22:22:31.410 に答える
96

docstring と間違われないコンテキストでは、三重引用符を非表示にします。たとえば、次のようになります。

'''
...statements...
''' and None

また:

if False: '''
...statements...
'''
于 2009-03-24T00:47:22.203 に答える
45

三重引用符なしでこれを行う唯一の方法は、次を追加することです。

if False:

そして、すべてのコードをインデントします。コードには適切な構文が必要であることに注意してください。


多くの Python IDE#では、選択した各行に追加したり、コメントを外すときに削除したりできます。同様に、viまたはEmacsを使用する場合は、コード ブロックに対してこれを行うマクロを作成できます。

于 2009-03-23T22:19:25.350 に答える
36

Mac 上の JetBrains PyCharm では、Command+/を使用して、選択したコード ブロックをコメント化/コメント解除します。Windows では、CTRL+を使用します/

于 2013-03-04T07:35:21.980 に答える
29

Mx コメント領域、Emacsの Python モード。

于 2009-03-23T22:33:15.333 に答える
17

CTRL+V少なくとも VIM では、ブロック ビジュアル モード ( Windows 以外の VIM) を使用して挿入するテキストの最初の列を選択し、次の#シーケンスを使用して各行の前に a を追加できます。

I#<esc>

In Block Visual モードIは、最初の行のブロックの前にカーソルを置いて挿入モードに移行します。挿入されたテキストは、ブロック内の各行の前にコピーされます。

于 2009-10-01T21:27:50.267 に答える
12

viで:

  • ブロックの上部に移動し、文字aでマークします。
  • ブロックの下部に移動し、文字bでマークします

その後、

:'a,'b s!^!#!
于 2010-09-16T17:48:52.490 に答える
11
comm='''
Junk, or working code 
that I need to comment.
'''

commおそらく短く、タッチタイピングが簡単で、プログラムで発生しない(そして発生しない)ことがわかっている任意の変数に置き換えることができます。例:xxx、、、、。oo_nullnil

于 2011-03-07T06:12:21.810 に答える
6

Windows マシンでNotepad++を使用し、コードを選択してCTRL-K. コメントを解除するには、コードを選択してCtrl+ Shift+を押しますK

ちなみに、Notepad++ は Python エディターとしてうまく機能します。オートコンプリート、コードの折りたたみ、構文の強調表示などを使用できます。そして、スピーチやビールと同じように自由です!

于 2010-05-01T03:30:58.527 に答える
6

はい、あります (エディターによって異なります)。PyDev (および PyDev を使用するAptana Studio ):

  • Ctrl+ 4- 選択したブロックのコメント

  • Ctrl+ 5- 選択したブロックのコメントを解除

于 2012-05-25T15:41:41.220 に答える
6

Python Tools for Visual Studio を使用するVisual Studioでは、ブロックを + 、 + でコメント アウトし、+ 、+CtrlKコメントCtrlC解除できます。CtrlKCtrlU

于 2013-01-10T20:18:07.680 に答える
5

Eclipse + PyDevでは、Python ブロックのコメントは Eclipse Java ブロックのコメントに似ています。コメントしたい行を選択し、Ctrl+/を使用してコメントします。コメント化されたブロックのコメントを解除するには、同じことを行います。

于 2012-06-09T19:00:46.690 に答える
4

Python コード (インタープリターによって無視されるコードとして理解される) をコメント アウトする唯一のメカニズムは #です。

あなたが言うように、インタープリターによって無視されない文字列リテラルを使用することもできますが、プログラムの実行にはまったく関係ありません。

于 2009-03-23T22:31:24.773 に答える
1

Eric4 では簡単な方法があります。ブロックを選択し、Ctrl+を入力Mしてブロック全体をコメントするか、Ctrl+ alt+Mを入力してコメントを解除します。

于 2012-01-18T12:20:09.093 に答える
1

別のエディターベースのソリューション: Emacs のテキスト「長方形」。

コメントアウトするコードを強調表示してから、Cxrt #

コードのコメントを解除するには: 強調表示してから Cxrk

私はこれを毎日、終日使用しています。(もちろん、ホットキーに割り当てられています。)

この強力な正規表現の検索/置換が、私が Emacs の他の「偏心」を許容する理由です。

于 2012-01-19T22:56:46.227 に答える
1

三重引用符は私には問題ありません。''' foo ''' を docstring に、""" bar """ をコメントに、またはその逆を使用して、コードをより読みやすくすることができます。

于 2009-03-24T07:35:32.003 に答える
0

SciTeなどの優れたエディターを使用して、コードを選択し、 Ctrl+を押しQて完了します。

ブロック コメントをサポートするエディタがない場合は、コード ブロックの最初と最後に三重引用符を使用して、「効果的に」コメント アウトすることができます。ただし、これはベスト プラクティスではありません。

于 2009-03-24T07:22:26.013 に答える