請看看下面:爲什麼我可以在python中亂序寫一些東西,而不是其他的?
a = 5
print a + b
b = 4
當我試圖運行上面的代碼,它給出了一個錯誤: 回溯(最近通話最後一個): 文件「C:/用戶/用戶/文件/ modules/ab.py「,第2行,在 print a + b NameError:name'b'is not defined
好的。在定義b
之前調用a + b
。這意味着Python按順序運行代碼,從上到下開始。 但是,這個怎麼樣:
class Data:
def __init__(self):
self.debug_level = 9
self.assign = [0, 0, 0, 0]
self.days = 0
def create_days(self, startTime, endTime):
res = 0
try:
if self.final_days < self.maximum_days:
以上,self.final_days
和self.maximum_days
尚未定義要麼,但它不會給任何錯誤。它背後的邏輯是什麼?
最好的問候,
您是否理解「定義」與「評估」之間的區別?你能先看看那些,然後**更新**你的問題來解釋你的困惑是什麼。 – 2011-05-13 09:58:39
您需要先撥打電話。 – riza 2011-05-13 12:50:54
運行'create_days'時,它們將被定義。 – tzot 2011-05-13 20:26:59