2015-02-08 30 views
-6

不靈例如: 我有xxPython評論多線陣

array = [\ 
1, 
2, 
3, 
4 
] 

我要評論出2和3 這工作:

array = [\ 
1, 
#2, 
#3, 
4 
] 

這不:

array = [\ 
1, 
''' 
2, 
3, 
''' 
4 
] 

現在想象一下,數組是巨大的。數百行。除非使用一些編輯技巧,否則我找不到一個簡單的方法來做到這一點。 我不能相信Python作爲一種語言沒有適合多行評論的東西。 再一次,它沒有{}的事實比這個混亂。 請指出這應該如何完成,並且我太愚蠢以至於無法用Google找到它。

- 編輯2 - 我同意大家以這種方式存儲數據並不理想。但我有一些現有的錯誤代碼。我需要迅速處理以找出問題所在。讓我們面對現實吧,除非你從未從事過真正的工作,否則我們都到過那裏。我以前使用過的其他語言都有語法來阻止註釋可以在代碼中的任何位置工作。難道沒有人覺得這是Python的問題嗎?

+5

如果你有一個龐大的數組(數百行),我會認爲問題出在你存儲數據的方式,而不是python註釋的工作方式。 – 2015-02-08 07:57:44

+2

任何中途體面的IDE都會讓你評論出任意數量的行,這幾乎不是一個*「詭計」*。另外,閱讀[風格指南](https://www.python.org/dev/peps/pep-0008)。 – jonrsharpe 2015-02-08 08:02:48

+3

三重引用會創建一個字符串,它不會創建註釋; [Python文檔](https://www.python.org/dev/peps/pep-0257/#what-is-a-docstring)不是註釋。 – 2015-02-08 08:02:59

回答

7

您錯誤地使用了它。

'''是多行字符串語法。它不是單獨評論。由於字符串對話,你沒有得到你的輸出。

編輯:

雖然

array = [\ 
1, 
#2, 
#3, 
4 
] 

被解讀爲

array = [\ 
1, 
4 
] 

array = [\ 
1, 
''' 
2, 
3, 
''' 
4 
] 

被解讀爲

array = [\ 
1, 
"\n2,\n3,\n" 
4 
] 

因此,我們看到語法錯誤。


我發現自己剛纔是

array = [\ 
1, 
""" 
2, 
3, 
""" 
,4] 

作品:)因爲它得到讀到這樣:

array = [\ 
1, 
"\n2,\n3,\n", 
4] 

要驗證這一點做:

print array 
+0

正如我在我對這個問題的評論中所說的,Python文檔是** not **註釋。 – 2015-02-08 08:13:26

+0

你是對的@PM 2Ring。我希望一些新的評論風格得到介紹,以解決這個問題:) – 2015-02-08 08:14:44

+1

謝謝@Bhargav饒,你是一個大開眼界:) – 2015-02-08 08:23:04

3

假設你甚至沒有一半的體面它具有評論功能,並且假設這是在大文件中完成它的唯一方法。如果你這樣做"""..."""它會創建一個多行字符串文字。現在,如果一切陣列中是令人感興趣的是數字一切所有字符串,它是你的幸運日:

array = [ 
1, 
2, 
""" 
3, 
4 
""", # this comma must be here 
5 
] 

注意,現在你的數組實際上是[1, 2, '\n3,\n4\n', 5],即有是數據中的多行字符串。現在,你可以通過執行淘汰任何字符串數組中:

array = [ i for i in array if not isinstance(i, str) ] 

得到[1, 2, 5]

當然,這不是沒有開銷,所以我寧願去「編輯技巧」。