什么時候Python的List,Tuple最后一個Item后面要加上一個逗號


為什么看Python的代碼,有時候會在數據結構的最后一項末尾加上逗號。直接來看,這個逗號很多余。

根據PEP81的解釋:

Trailing commas are usually optional, except they are mandatory when making a tuple of one element

這里說末尾逗號不是必填的,除非你寫了一個只有一個元素的元祖。

所以這么多人寫的代碼風格都是多余的?

不是的。PEP8在上面一句的后來接着寫道,末尾的代碼可以幫助減少bug:

  1. 比如多人協作項目,一個列表的項可能由不同的人添加,你留着一個逗號可以幫助下一個修改的人減少出bug的幾率
  2. 因為兩個被引號包裹的字符串,會有自動合並功能。所以這也是一個潛在的bug

PEP8繼續提到,適合在結尾加上額外逗號的代碼類似下面這樣,末項以逗號結尾,再起一行加上閉合括號:

FILES = [
    'setup.cfg',
    'tox.ini',
    ]
initialize(FILES,
           error=True,
           )

但是,如果代碼是下面這種形式,末尾逗號和閉合括號是緊連的,那這個逗號就沒有必要了:

FILES = ['setup.cfg', 'tox.ini',]
initialize(FILES, error=True,)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM