Saya baru-baru ini mulai mempelajari Python , tetapi saya tidak dapat menemukan bagaimana menerapkan komentar multi-line. Sebagian besar bahasa memiliki simbol komentar blok seperti
/*
*/
Saya mencoba ini dengan Python, tetapi ada kesalahan, jadi ini mungkin bukan cara yang benar. Apakah Python sebenarnya memiliki fitur komentar multiline?
python
comments
documentation
Hunter Bawah Tanah
sumber
sumber
#
satu-satunya cara untuk membuat komentar. Saya menduga itu membuatnya lebih mudah untuk menafsirkan skrip Python dengan cara ini.Jawaban:
Anda dapat menggunakan string yang dikutip tiga kali lipat. Ketika mereka bukan docstring (hal pertama di kelas / fungsi / modul), mereka diabaikan.
(Pastikan untuk membuat indentasi yang
'''
tepat untuk menghindariIndentationError
.)Guido van Rossum (pembuat Python) tweet ini sebagai "pro tip".
Namun, panduan gaya Python, PEP8, lebih suka menggunakan komentar satu baris berturut-turut , dan ini juga yang akan Anda temukan di banyak proyek. Editor teks biasanya memiliki jalan pintas untuk melakukan ini dengan mudah.
sumber
test.py
hanya untuk melihat. Ketika saya melakukannyaimport test
, sebuahtest.pyc
file dihasilkan. Sayangnya,pyc
file tersebut sangat besar dan berisi seluruh string sebagai teks biasa. Apakah saya salah memahami sesuatu, atau apakah tweet ini salah?pyc
. Saya mengedit jawabannya dan memasukkan "modul" ke daftar hal-hal yang memiliki dokumen."""
untuk dokumen dan'''
untuk memblokir komentar. Dengan cara ini Anda dapat membungkus'''
dokumen biasa Anda tanpa konflik.#
baris kosong untuk membedakan paragraf .Python memang memiliki sintaksis string / komentar multiline dalam arti bahwa kecuali digunakan sebagai docstrings, string multiline tidak menghasilkan bytecode - seperti
#
halnya komentar yang terkait. Akibatnya, ia bertindak persis seperti komentar.Di sisi lain, jika Anda mengatakan perilaku ini harus didokumentasikan dalam dokumentasi resmi untuk menjadi sintaks komentar yang benar, maka ya, Anda berhak mengatakan itu tidak dijamin sebagai bagian dari spesifikasi bahasa.
Dalam hal apa pun, editor teks Anda juga harus dapat dengan mudah mengomentari wilayah yang dipilih (dengan menempatkan a
#
di depan setiap baris secara individual). Jika tidak, beralihlah ke editor teks yang melakukannya.Pemrograman dengan Python tanpa fitur pengeditan teks tertentu bisa menjadi pengalaman yang menyakitkan. Menemukan editor yang tepat (dan mengetahui cara menggunakannya) dapat membuat perbedaan besar dalam bagaimana pengalaman pemrograman Python dirasakan.
Editor teks tidak hanya dapat mengomentari daerah yang dipilih, tetapi juga harus dapat memindahkan blok kode ke kiri dan kanan dengan mudah, dan itu juga harus secara otomatis menempatkan kursor pada tingkat lekukan saat ini ketika Anda menekan Enter. Lipat kode juga bisa bermanfaat.
Untuk melindungi dari kerusakan tautan, berikut adalah isi tweet Guido van Rossum :
sumber
Dari jawaban yang diterima ...
Ini tidak benar. Tidak seperti komentar, string triple-dikutip masih diuraikan dan harus valid secara sintaksis, terlepas dari mana mereka muncul dalam kode sumber.
Jika Anda mencoba menjalankan kode ini ...
Anda akan mendapatkan ...
... di Python 2.x atau ...
... di Python 3.x.
Satu-satunya cara untuk melakukan komentar multi-baris yang diabaikan oleh parser adalah ...
sumber
r'raw string'
-r'\xor' == '\\xor'
.*/
karena akan menghentikan blok, misalnya.'''
"komentar" memiliki lebih banyak batasan. Anda hanya dapat mengomentari seluruh pernyataan, sedangkan komentar dapat mengomentari bagian ekspresi. Contoh: Dalam C, Anda dapat komentar beberapa elemen daftar:int a[] = {1, 2, /* 3, 4, */ 5};
. Dengan multi-line string, Anda tidak dapat melakukannya, karena itu akan menempatkan string di dalam daftar Anda.Dalam Python 2.7, komentar multiline adalah:
Jika Anda berada di dalam kelas, Anda harus tab itu dengan benar.
Sebagai contoh:
sumber
weather2
komentarnya sebenarnya adalah docstring karena ini adalah hal pertama di kelas.AFAIK, Python tidak memiliki blokir komentar. Untuk mengomentari setiap baris, Anda dapat menggunakan
#
karakter.Jika Anda menggunakan Notepad ++ , ada jalan pintas untuk memblokir komentar . Saya yakin orang lain seperti gVim dan Emacs memiliki fitur serupa.
sumber
Saya pikir tidak, kecuali bahwa string multiline tidak diproses. Namun, sebagian besar, jika tidak semua IDE Python memiliki shortkey untuk 'mengomentari' beberapa baris kode.
sumber
Jika Anda memberi komentar
di tengah skrip, Python / linter tidak akan mengenalinya. Lipat akan kacau, karena komentar di atas bukan bagian dari rekomendasi standar. Lebih baik digunakan
Jika Anda menggunakan Vim , Anda bisa plugin seperti commentary.vim , untuk secara otomatis mengomentari garis panjang komentar dengan menekan
Vjgcc
. Di manaVj
memilih dua baris kode, dangcc
berkomentar keluar.Jika Anda tidak ingin menggunakan plugin seperti di atas, Anda dapat menggunakan pencarian dan ganti like
Ini akan menggantikan karakter pertama pada baris saat ini dan selanjutnya dengan
#
.sumber
Tidak ada fitur seperti komentar multi-baris.
#
adalah satu-satunya cara untuk mengomentari satu baris kode. Banyak dari Anda menjawab '' 'komentar' '' ini sebagai solusi mereka.Tampaknya berfungsi, tetapi secara internal
'''
dengan Python mengambil garis-garis yang terlampir sebagai string biasa yang tidak diabaikan oleh interpreter seperti komentar menggunakan#
.Periksa dokumentasi resmi di sini
sumber
Sayangnya pengetatan tidak selalu dapat digunakan sebagai komentar! Jadi lebih aman untuk tetap berpegang pada standar setiap baris dengan
#
.Berikut ini sebuah contoh:
sumber
Nah, Anda dapat mencoba ini (saat menjalankan kutipan, input ke pertanyaan pertama harus dikutip dengan
'
):Apapun yang terlampir di antara
"""
akan dikomentari.Jika Anda mencari komentar satu baris maka itu
#
.sumber
Komentar multiline dengan Python:
Bagi saya, keduanya '' 'dan "" "berfungsi.
Contoh:
Contoh:
sumber
Komentar inline dalam Python dimulai dengan karakter hash.
Perhatikan bahwa karakter hash dalam string literal hanyalah karakter hash.
Karakter hash juga dapat digunakan untuk komentar baris tunggal atau ganda.
Lampirkan teks dengan tanda kutip ganda rangkap untuk mendukung docstring.
Lampirkan teks dengan tanda kutip tunggal tunggal untuk komentar blok.
sumber
Pada Python 2.7.13:
Tunggal:
Multiline:
sumber
Kode Visual Studio universal universal multi-line comment toggle.
macOS: Pilih blok-kode lalu ⌘+/
Windows: Pilih blok-kode lalu Ctrl+/
sumber
Ya, boleh saja menggunakan keduanya:
dan
Tapi, satu-satunya hal yang Anda semua perlu ingat ketika menjalankan dalam IDE, adalah Anda harus 'MENJALANKAN seluruh file agar dapat diterima sebagai beberapa kode baris. Baris demi baris 'RUN' tidak akan berfungsi dengan baik dan akan menampilkan kesalahan.
sumber
Untuk mengomentari banyak baris kode dalam Python adalah cukup menggunakan
#
komentar satu baris pada setiap baris:Untuk menulis komentar multi-baris "layak" dalam Python adalah dengan menggunakan string multi-line dengan
"""
sintaksis Python memiliki fitur string dokumentasi (atau dokumen). Ini memberi programmer cara mudah menambahkan catatan cepat dengan setiap modul, fungsi, kelas, dan metode Python.Juga, sebutkan bahwa Anda dapat mengakses docstring oleh objek kelas seperti ini
sumber
Anda dapat menggunakan yang berikut ini. Ini disebut DockString.
sumber
Saya akan menyarankan untuk tidak menggunakan
"""
komentar multi-baris!Berikut adalah contoh sederhana untuk menyoroti apa yang mungkin dianggap sebagai perilaku tak terduga:
Sekarang lihat hasilnya:
String multi baris tidak diperlakukan sebagai komentar, tetapi digabungkan dengan
'clearly I'm also a string'
untuk membentuk string tunggal.Jika Anda ingin berkomentar banyak baris, lakukan sesuai dengan pedoman PEP 8 :
Keluaran:
sumber
lang-bash
" bukan "bash
" untuk penyorotan sintaksis? Bagaimanapun, biasanya terlihat aneh (misalnya untuk "Some" di sini) - bahkan jika itu sebenarnya perintah-perintah dengan parameter.lang-none
(penyorotan sintaks dimatikan) mungkin merupakan pilihan yang lebih baik.Menggunakan PyCharm IDE.
Pilih semua baris lalu tekan Ctrl + /
sumber
Komentar multiline sebenarnya tidak ada di Python. Contoh di bawah ini terdiri dari string yang tidak ditetapkan, yang divalidasi oleh Python untuk kesalahan sintaksis.
Beberapa editor teks, seperti Notepad ++ , memberikan kami pintasan untuk mengomentari kode atau kata-kata tertulis.
Juga, Ctrl+ Kadalah jalan pintas di Notepad ++ untuk memblokir komentar. Itu menambahkan
#
di depan setiap baris di bawah pilihan. Ctrl+ Shift+ Kuntuk blok komentar.sumber
Di antara jawaban lain, saya menemukan cara termudah adalah dengan menggunakan fungsi komentar IDE yang menggunakan dukungan komentar Python
#
.Saya menggunakan Anaconda Spyder dan memiliki:
Ini akan mengomentari / menghapus komentar satu baris / multi kode dengan
#
.Saya merasa paling mudah.
Misalnya, blok komentar:
sumber
Pilih baris yang ingin Anda komentari dan kemudian gunakan Ctrl+ ?untuk berkomentar atau batalkan komentar pada kode Python di editor Teks Sublime .
Untuk satu baris Anda dapat menggunakan Shift+ #.
sumber