लंबी लाइनों लपेटकर का पसंदीदा तरीका कोष्ठक, कोष्ठक और ब्रेसिज़ के अंदर पायथन के निहित लाइन निरंतरता का उपयोग करके। कोष्ठक में अभिव्यक्ति लपेटकर लंबी लाइनों को कई लाइनों पर तोड़ दिया जा सकता है। लाइन निरंतरता के लिए बैकस्लैश का उपयोग करने के लिए इन्हें वरीयता में इस्तेमाल किया जाना चाहिए।
बैकस्लैश कभी-कभी उचित हो सकता है। उदाहरण के लिए, लंबे,-बयान के साथ कई अंतर्निहित निरंतरता उपयोग नहीं कर सकते, तो बैकस्लैश स्वीकार्य हैं:
with open('/path/to/some/file/you/want/to/read') as file_1, \
open('/path/to/some/file/being/written', 'w') as file_2:
file_2.write(file_1.read())
एक और इस तरह के मामले ज़ोर बयान के साथ है।
सुनिश्चित करें कि निरंतर लाइन को उचित रूप से इंडेंट करना सुनिश्चित करें। एक बाइनरी ऑपरेटर के चारों ओर तोड़ने के लिए पसंदीदा स्थान ऑपरेटर के बाद, इससे पहले नहीं है। कुछ उदाहरण:
class Rectangle(Blob):
def __init__(self, width, height,
color='black', emphasis=None, highlight=0):
if (width == 0 and height == 0 and
color == 'red' and emphasis == 'strong' or
highlight > 100):
raise ValueError("sorry, you lose")
if width == 0 and height == 0 and (color == 'red' or
emphasis is None):
raise ValueError("I don't think so -- values are %s, %s" %
(width, height))
Blob.__init__(self, width, height,
color, emphasis, highlight)
डोनाल्ड नुथ की शैली ऑपरेटरों संरेखित खड़ी है, इस प्रकार आंख काम का बोझ कम करने का निर्धारण करते समय आइटम जोड़ा गया है और घटाया जाता है।
PEP8: Should a line break before or after a binary operator? से:
डोनाल्ड नुथ अपने कंप्यूटर और टंकित श्रृंखला में पारंपरिक नियम बताते हैं: "एक पैरा के भीतर सूत्रों हमेशा द्विआधारी संचालन और संबंधों के बाद तोड़ हालांकि, प्रदर्शित सूत्रों हमेशा द्विआधारी आपरेशन से पहले तोड़" [3 ]।
गणित से परंपरा का अनुसरण आमतौर पर अधिक पठनीय कोड में जो परिणाम:
# Yes: easy to match operators with operands
income = (gross_wages
+ taxable_interest
+ (dividends - qualified_dividends)
- ira_deduction
- student_loan_interest)
अजगर कोड में, यह पहले या एक द्विआधारी ऑपरेटर के बाद तोड़ने के लिए अनुमति है, जब तक सम्मेलन स्थानीय रूप से संगत है के रूप में। नए कोड के लिए Knuth की शैली का सुझाव दिया गया है।
[3]: डोनाल्ड नुथ की द TeXBook, पृष्ठों 195 और 196
असल में, आप शैली गाइड की वरीयता वास्तव में पीछे की ओर है।लागू निरंतरता को प्राथमिकता दी जाती है, स्पष्ट बैकस्लैश केवल तभी उपयोग किया जाना चाहिए जब आवश्यक हो। –
मुझे लगता है कि यह कह रहा है कि यदि आपके पास पहले से ही एक अभिव्यक्ति के चारों ओर ब्रैकेट हैं, तो उनको उपयोग करें, लेकिन एकाधिक लाइनों पर इसे तोड़ने के उद्देश्य से अभिव्यक्ति के चारों ओर ब्रैकेट न रखें। यद्यपि कोई कठोर और तेज़ नियम नहीं है। मैं सवाल में रेखा के लिए सोचता हूं हालांकि, बैकस्लैश जाने का रास्ता है। –
यह सही नहीं है। प्रतिबिंबित करने के बजाए स्टाइल गाइड वास्तव में क्या कहता है, इसे प्रतिबिंबित करने के लिए कृपया अपना उत्तर संपादित करें। –