我正在學習Python。截至目前,filter
,id
等字生成警告Warning: assignment to reserved built-in symbol
。那麼,我正在設計篩選器並將id -s分配給每個,並且此警告迫使我在各處使用下劃線。爲什麼這麼多「保留的內置符號」-s在python
C的保留關鍵字是縮短的詞,例如, int
或不經常使用英文單詞例如volatile
。我如何應對Python編程語言的極端可讀性,這迫使我讓自己的程序無法讀取?
我正在學習Python。截至目前,filter
,id
等字生成警告Warning: assignment to reserved built-in symbol
。那麼,我正在設計篩選器並將id -s分配給每個,並且此警告迫使我在各處使用下劃線。爲什麼這麼多「保留的內置符號」-s在python
C的保留關鍵字是縮短的詞,例如, int
或不經常使用英文單詞例如volatile
。我如何應對Python編程語言的極端可讀性,這迫使我讓自己的程序無法讀取?
這些都不是保留關鍵字,因此 - 你可以用代替。這只是一個警告,IDE告訴你這樣做可能不是一個好主意,因爲它可能會破壞將被複制粘貼進和出模塊的代碼,並且可能會讓代碼混淆而沒有完整的上下文。
False (3) class finally is return
None (3) continue for lambda try
True (3) def from nonlocal while
and del global not with
as elif if or yield
assert else import pass exec (2)
break except in raise print (2)
只有Python2的exec
和print
是明智的變量名。我認爲這是他們不再在Python3中保留的原因的一部分。
Python被設計爲可讀,所以它使用可讀的英文單詞作爲類型名稱。是的,id
可能不是一個好主意。也許list
,dict
等應該是List
,Dict
等,但現在改變這一點已爲時過晚。
如果你設計了一個過濾器,你可以稱它爲Filter
。 Id
或ID
也是如此。
該警告與Python本身無關。
使用Google進行快速搜索似乎表明,在使用PyDev使用Eclipse時會生成警告,因此您可以在PyDev文檔中找到答案,以瞭解如何關閉它。
這個計算器的問題可能會有所幫助:Suppress warnings in PyDev
我認爲警告應該是:重新定義xxx,你確定... –
它不給的Python的錯誤;這些不是保留關鍵字。 –