第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關(guān)于Python作用域的問題!急死我了

關(guān)于Python作用域的問題!急死我了

asdhjhg 2017-03-26 20:44:15
i?=?0 def?f(): ????print?i ????i?=?0 f()運行結(jié)果顯示:UnboundLocalError: local variable 'i' referenced before assignment。在這個例子當(dāng)中,函數(shù)f中的變量i是局部變量,但是在print語句使用它的時候,它還未被綁定到任何對象之上,那么接下來不是應(yīng)該往上級搜尋i?這里最外面i=0應(yīng)該是全局域的全局變量,而f中的i是local作用域中的局部變量。所以print使用i的時候,i還沒有綁定,所以應(yīng)該往全局域中找全局變量i=0啊!為什么還告訴我局部變量引用之前未定義??????求哥哥們教我!
查看完整描述

3 回答

已采納
?
孤獨的小豬

TA貢獻232條經(jīng)驗 獲得超302個贊

我理解應(yīng)該是這樣的,函數(shù)f里面print i,首先會先在函數(shù)內(nèi)部查找是否有這個變量,而函數(shù)內(nèi)部是有變量i的,但是在打印語句的后面,所以會報賦值前引用局部變量。

查看完整回答
1 反對 回復(fù) 2017-03-27
  • asdhjhg
    asdhjhg
    這個我理解了,但是內(nèi)部有i,但是在print后面,說白了意思就是i我這local域還沒綁定呢,你哪來的print?趕緊找上級! 所以按道理不應(yīng)該報錯啊,而是應(yīng)該向上級尋找,LEGB不是應(yīng)該L沒有往E找,E沒有找G,最后找到B,如果B沒有則報錯??
?
人笨嫌刀鈍

TA貢獻100條經(jīng)驗 獲得超24個贊

i 應(yīng)該聲明global

查看完整回答
反對 回復(fù) 2017-03-26
  • 3 回答
  • 0 關(guān)注
  • 1617 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號