2010-02-15 91 views
2

我已經臨到了幾個類似這樣的代碼行的下面一行,但我不能確定我應該怎麼打破它:如何打破蟒蛇

blueprint = Blueprint(self.blueprint_map[str(self.ui.blueprint_combo.currentText())], runs=self.ui.runs_spin.text(), me=self.ui.me_spin.text(), pe=self.ui.pe_skill_combo.currentIndex()) 

在此先感謝

+0

我覺得留出一個括號(或添加額外的)是一個很好的方式。 – outis 2010-02-15 15:12:57

+0

謝謝大家的好答案,第一眼看上去「最漂亮」,但感謝迅速的反應! – FrederikNS 2010-02-15 15:15:56

回答

14
blueprint = Blueprint(
    self.blueprint_map[str(self.ui.blueprint_combo.currentText())], 
    runs=self.ui.runs_spin.text(), 
    me=self.ui.me_spin.text(), 
    pe=self.ui.pe_skill_combo.currentIndex(), 
) 
0

Anywhere的括號內應該工作,如:

blueprint = Blueprint(self.blueprint_map[str(self.ui.blueprint_combo.currentText())], 
     runs=self.ui.runs_spin.text(), me=self.ui.me_spin.text(), 
     pe=self.ui.pe_skill_combo.currentIndex()) 
+1

-1:這違反了PEP 8的慣例。掛起的縮進很好,但「第一行應該沒有任何爭論」。最好在左括號處打破,並將連續行上的零部件內容與一致的8(或4)列縮進對齊。 – bignose 2013-06-24 06:14:10

0
blueprint = Blueprint(self.blueprint_map[str(self.ui.blueprint_combo.currentText())], 
         runs=self.ui.runs_spin.text(), me=self.ui.me_spin.text(), 
         pe=self.ui.pe_skill_combo.currentIndex()) 
+1

-1:如果更改第一行的長度,則延續線會錯誤對齊。最好做一個標準的縮進級別。 – bignose 2011-04-15 04:15:42

4

我會做這種方式:

blueprint = Blueprint(
       self.blueprint_map[str(self.ui.blueprint_combo.currentText())], 
       runs=self.ui.runs_spin.text(), 
       me=self.ui.me_spin.text(), 
       pe=self.ui.pe_skill_combo.currentIndex()) 
+0

+1,但請使用標準的8(或4)列縮進。 – bignose 2013-06-24 06:16:42

+0

-1爲大和任意大小的縮進。如果第一行的佈局發生變化(例如,通過更改「藍圖」的名稱),則需要更改以下所有行的縮進。最好使用正常的單個4字符縮進。 – 2014-07-03 14:17:42

5

這個怎麼樣

blueprint_item = self.blueprint_map[str(self.ui.blueprint_combo.currentText())] 
blueprint = Blueprint(blueprint_item, 
         runs=self.ui.runs_spin.text(), 
         me=self.ui.me_spin.text(), 
         pe=self.ui.pe_skill_combo.currentIndex()) 
+0

中間變量名稱不會添加任何額外的信息,所以在這種情況下,我會贊成刪除它。如果你沒有縮小Blueprint()的參數,這很容易做到。使這些參數與這樣的大括號保持一致是很常見的,但是卻被誤導了,因爲這意味着如果第一行的佈局改變了(例如通過改變'blueprint'的名字),那麼你需要改變下面所有行的縮進。最好使用正常的單個4字符縮進。 – 2014-07-03 14:17:15