首頁 > 後端開發 > Python教學 > Python - 寫程式碼時過長該如何解決?

Python - 寫程式碼時過長該如何解決?

零下一度
發布: 2017-07-03 16:13:28
原創
2963 人瀏覽過

Python的編碼規格要求每行的長度不超過80,那就就有一個問題,如果我真的需要在一行寫80個字元以上的程式碼怎麼辦?

Python語句都可以很簡單的實作把一行分成多行,例如下面這兩種寫法是等價的:

l = [1, 2, 3, 4, 5 , 6]
l = [
   1, 2, 3,
   4, 5, 6
]

#Python語句中一行過長的透過此方法可以很容易地把一行寫成多行,但是如果我就是有一個字串長度就超過80個字元了咋辦?

例如我有一個這樣的字串:

s = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras magna turpis, viverra et cursus eget, efficitur sed eros. Curabitur finibus ultricies nisi, nec convallis nunc gravida sed. Nam ac facilisis eros, quis tincidunt turpis. Vestibulum quis mi quis justo faucibus condimentum. Aliquam accumsan ultricies orci id mollis. Mauris faucibus dignissim luctus. Aenean lacus nunc, ultricies ac ante eu, fringilla accumsan nisi. Cras et nunc posuere, mattis mi at, rutrum felis. Etiam volutpat neque sodales condimentum consectetur.'
登入後複製

有人說Python不是有用三個引號包含的字串嗎?這樣就可以寫成多行了,例如這樣:

s = """Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Aliquam bibendum purus at nibh rutrum dapibus.
Aliquam quis sem sagittis, rutrum magna quis, gravida quam.
Sed porta ex nec leo elementum, a efficitur neque ornare.
Ut tristique nunc vitae ultrices molestie.
"""
登入後複製

但是這樣寫會帶來一個問題那就是每一行都會在後面加一個換行符,如果我的字串只有一行呢?這樣做就不太適合了。

我認為比較好的方式有以下幾種:

1. 在行末加上轉義符

s = "Lorem ipsum dolor sit amet, consectetur adipiscing elit.\
Aliquam bibendum purus at nibh rutrum dapibus.\
Aliquam quis sem sagittis, rutrum magna quis, gravida quam.\
Sed porta ex nec leo elementum, a efficitur neque ornare.\
Ut tristique nunc vitae ultrices molestie."
登入後複製

2. 使用圓括號隱式轉換

s = ("Lorem ipsum dolor sit amet, consectetur adipiscing elit."
    "Aliquam bibendum purus at nibh rutrum dapibus."
    "Aliquam quis sem sagittis, rutrum magna quis, gravida quam."
    "Sed porta ex nec leo elementum, a efficitur neque ornare."
    "Ut tristique nunc vitae ultrices molestie.")
# 注意:行末没有逗号
登入後複製

個人覺得第一種方式雖然能解決問題但是過於醜陋,推薦使用第二種方法。

以上是Python - 寫程式碼時過長該如何解決?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板