Pertanyaan Python: '#' Komentar setelah backslash


Ini tidak berfungsi:

something = \
    line_of_code * \    #  Comment
    another_line_of_code * \    #  Comment
    and_another_one * \         #  Comment
    etc

Juga tidak ini:

something = \
    #  Comment \
    line_of_code * \
    #  Comment \
    another_line_of_code * ...

Juga tidak ini:

something = \
    ''' Comment ''' \
    line_of_code * \
    ''' Comment ''' \
    another_line_of_code * ...

Jika ada cara untuk membuat komentar dalam kode dipecah menjadi beberapa baris?


32
2017-07-13 13:54


asal


Jawaban:


Lakukan seperti itu:

a, b, c, d = range(1, 5)

result = (
    # First is 1
    a *
    # Then goes 2, result is 2 now
    b *
    # And then 3, result is 6
    c *
    # And 4, result should be 24
    d
)

Sebenarnya, menurut PEP8 tanda kurung lebih disukai daripada garis miring, ketika memecah sesuatu menjadi beberapa baris:

Cara yang lebih disukai untuk membungkus garis panjang adalah dengan menggunakan kelanjutan garis tersirat Python di dalam tanda kurung, tanda kurung dan tanda kurung. Garis panjang dapat dipecah menjadi beberapa garis dengan membungkus ekspresi dalam tanda kurung. Ini harus digunakan dalam preferensi untuk menggunakan backslash untuk kelanjutan garis.

Dalam kasus Anda juga memungkinkan untuk memberi komentar.

Inilah buktinya, bahwa ia bekerja: http://ideone.com/FlccUJ


33
2017-07-13 14:08



Tidak yakin apa yang Anda coba lakukan didukung oleh python. Baca baca Bagian PEP8 tentang komentar inline. Menempatkan komentar di tengah-tengah kelanjutan garis adalah "jelek" dan mungkin membingungkan.

Python dengan cara # pada setiap baris jika Anda ingin mengomentari sesuatu atau untuk memberi komentar pada inline semuanya setelahnya # diabaikan.

Jika Anda benar-benar ingin mengomentari pernyataan multiline yang benar-benar perlu taruh sebelum atau sesudahnya.

a, b, c, d = range(1, 5)
# a is ..., b is ...
# c is ..., d is ...
result = (a, b, c, d)

pasti tidak ingin terlibat dalam perdebatan tentang gaya, tetapi hanya karena Anda dapat melakukan sesuatu tidak berarti bahwa itu jelas. Komentar sebaris sangat bagus untuk memperjelas baris kode pendek yang hanya membutuhkan penunjuk pendek.


-1
2017-07-13 14:10