亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

變量定義問題

sum = 0;

def square_of_sum(L):

? ? for s in L:

? ? ? ? sum += s*s

? ? return sum

print square_of_sum([1, 2, 3, 4, 5])

print square_of_sum([-5, 0, 5, 15, 25])

如上 為什么不能把sum這個屬性 定義在函數外?

正在回答

2 回答

在python的函數中和全局變量同名的變量,如果你要修改變量的值就會變成局部變量,所以進行? sum += s*s 的賦值操作時,sum已經變成了局部變量,但是sum在函數中又沒有定義,就會出現沒定義這樣的錯誤。如果要引用全局變量,必須加上global關鍵字。就是在定義函數的一開頭寫上 global sum這句話才行。

1 回復 有任何疑惑可以回復我~

https://www.cnblogs.com/xixi18/p/8341828.html

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758390    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

變量定義問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號