為什么不用給變量x賦初始值
def?square_of_sum(L): ????sum=0; ????for?x?in?L: ????????sum?+=?x**2 ????return?sum print?square_of_sum([1,?2,?3,?4,?5]) print?square_of_sum([-5,?0,?5,?15,?25])
為啥不用給變量x賦初始值
def?square_of_sum(L): ????sum=0; ????for?x?in?L: ????????sum?+=?x**2 ????return?sum print?square_of_sum([1,?2,?3,?4,?5]) print?square_of_sum([-5,?0,?5,?15,?25])
為啥不用給變量x賦初始值
2016-04-12
舉報
2016-04-12
首先糾正 1樓的一個小誤解, Python 是動態語言 是指 變量的數據類型是可以變得, 也就是說我們可以聲明一個變量x=1 , 然后把一個字符串賦值給x: ?x='hahaha'. 或者用 標準定義來說,在運行時可以隨意給變量賦值。 ?動態語言并不是題主所問。
另外, 在 for in 語句中, 每次都給x 賦值了, 并不是沒有賦初始值。 ?或者更準確的說。 for 加 in 加 iterable 類型 組合使用的時候, 每次循環都給x 賦值。 ?
2016-04-12
因為python 是動態的語言,不同于c 、 java的for循環需要int x=0,python 默認的for循環從序列的初始位置開始。