㈠ python for循環能不能對列表本身進行更改
前面這個迭代list_name,並且每次迭代取name的值到
i這個變數里
後面這個也是類似,只是每次迭代取索引的值到
i這個變數里
用起來沒有區別不大的,用前面這個的話是不用到索引的時候用,後面這個是用到索引的時候用,其他的實際用那個看個人喜好了
㈡ Python 在for循環裡面成功改變list,退出for循環後list卻沒變
python裡面字元串是不可修改的,所以傳值的時候並不是把Image[i]這個對象傳給了i,而是傳過去的復制值,所以你修改的只是i這個變數不是對應的Image[i]
要麼改得復雜點改成這樣:
print ''
print Images
print ''
for i in range(len(Images)):
print Images[i]
Images[i] = 'http://www.somesite.com' + Images[i]
print Images[i]
print ''
for i in Images:
print i
if 'http' in i:
print 'True'
else:
print 'False'
㈢ python在一個for循環中能不能用改變的數值來命名不同的變數
>>>foriinrange(10):
exec('a%s=%s'%(i,i))
>>>a1
1
>>>a2
2
>>>a3
3
>>>a4
4
>>>a5
5
㈣ python用for遍歷列表時不能修改列表值嗎
首先,可以肯定的是,for 循環遍歷時可以修改列表值。
那麼問題出在哪?在for 循環中的賦值語句magician='the Great' + magician,這個語句並沒有改變列表元素,在for magician in magicians中,magician 只是一個得到了列表元素的值的臨時變數,修改這個臨時變數並不會影響的列表裡的值。
原代碼相當於:magician =magicians[i], magician ='theGreat'+magician, 很明顯,這里沒有影響到列表元素,而是只改變了臨時變數。
可以使用以下代碼:
for i in range(len(magicians)):
magicians[i] = 'the Great' + magicians[i]