當前位置:首頁 » 編程語言 » pythonlistforif

pythonlistforif

發布時間: 2022-09-28 05:34:31

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怎麼寫一個循環判斷的list

你對list的理解有點問題。

list在python里是數組的意思,是一種數據結構。

l = [1,2,3 ... 100] # 或者寫成 range(100)

foriinl:
ifi>10:
printi

⑶ python實現給定一個列表判斷裡面是否有重復

有兩個方法:

  • 使用列表的count方法,因為count方法可以做對象內的元素進行出現次數疊加計算

  • list1=[1,2,3,4,4,5,6,7]list1.count(1)#結果為1list1.count(4)#結果為2foriinlist1:iflist1.count(i)>=2:print('該元素%s重復'%i)#結果:該元素4重復該元素4重復#因為迭代了兩次4所以有兩次輸出,功能是實現了,但是卻列印了兩次,有點不理想
  • 2.借用工廠函數set()把對象轉為集合和列表的方法(淺復制),集合會默認把重復元素去掉

  • list1=[1,2,3,4,4,5,6,7]list2=list1.()#為了不破壞原數據,臨時淺復制給變數list2list3=list(set(list2))#使用set()函數將list2轉為集合去掉重復元素又用list()轉回列表foriinlist3:#對無重復元素的列表list3迭代ifiinlist2:list1.remove(i)#當list3內的元素存在於list2中,則把其元素從list2中刪除,最後就會留下重復元素print('list1:%s中的重復元素有:%s'%(list1,list2))#組後輸出原數據list1和最終結果list2#結果:list1:[1,2,3,4,4,5,6,7]中的重復元素有:[4]#效果實現了,也沒問題,就是變數使用有點多。看你選擇了

⑷ python if 語句和列表結合求解

defselect_data(list):

defcheck_pass(fname,surname):
'''這里做成一個函數,直觀一點'''
forrecinlist:
ifstr(rec[1])==fnameandstr(rec[0])==surname:
returnTrue
returnFalse
#check_pass結束
#加一個flag作為標記,通過檢查(is_pass為True)就結束了
is_pass=False
whilenotpass:
first_name=str(input('Inputfirstname'))
surname=str(input('Inputsurname'))
is_pass=check_pass(first_name,surname)

⑸ python中的for循環取list中的第i 個值值

如果一定要用循環寫,是這么寫的
lis=['a','b','c']
for i in lis:
if i=='b':
print(i)

⑹ python中關於for循環取list的數值。

for i in test:
if i=='ABC':
print 'The result is right'

⑺ python語法問題:關於在list中使用for循環

Python 的強大特性之一是其對 list 的解析,它提供一種緊湊的方法,可以通過對 list 中的每個元素應用一個函數,從而將一個 list 映射為另一個 list。

例 3.24. List 解析介紹

>>> li = [1, 9, 8, 4]
>>> [elem*2 for elem in li]
[2, 18, 16, 8]
>>> li
[1, 9, 8, 4]
>>> li = [elem*2 for elem in li]
>>> li
[2, 18, 16, 8]

為了便於理解它,讓我們從右向左看。li 是一個將要映射的 list。Python 循環遍歷 li 中的每個元素。對每個元素均執行如下操作:首先臨時將其值賦給變數 elem,然後 Python 應用函數 elem*2 進行計算,最後將計算結果追加到要返回的 list 中。

需要注意是,對 list 的解析並不改變原始的 list。

將一個 list 的解析結果賦值給對其映射的變數是安全的。不用擔心存在競爭情況或任何古怪事情的發生。Python 會在內存中創建新的 list,當對 list 的解析完成時,Python 將結果賦給變數。

From <dive into python>

⑻ 有關python中for循環和列表的兩個問題!!

第一個問題你用的for-in,這樣你的list沒有一個序號,也就不能判斷第一個元素了,像這樣遍歷的為什麼不用for i in range(len(list))呢。。如果你真的像這樣,可以在循環外設置一個計數器,然後在循環里不斷加一。。

第二個問題條件寫 if type(i)==list:就可以了。。

⑼ python中為什麼我的for循環里嵌套的if只能循環一次

你要遍歷的話,不能把name = input("請輸入你想修改的學生姓名:")放在循環里

應該是先輸入,對輸入的字元進行循環遍歷,而不是循環輸入」學生姓名「

運行結果

⑽ python實現給定一個列表判斷裡面是否有重復元素

有兩個方法:

  1. 使用列表的count方法,因為count方法可以做對象內的元素進行出現次數疊加計算

list1=[1,2,3,4,4,5,6,7]
list1.count(1)#結果為1
list1.count(4)#結果為2
foriinlist1:
iflist1.count(i)>=2:
print('該元素%s重復'%i)
#結果:
該元素4重復
該元素4重復#因為迭代了兩次4所以有兩次輸出,功能是實現了,但是卻列印了兩次,有點不理想

2.借用工廠函數set()把對象轉為集合和列表的方法(淺復制),集合會默認把重復元素去掉

list1=[1,2,3,4,4,5,6,7]
list2=list1.()#為了不破壞原數據,臨時淺復制給變數list2
list3=list(set(list2))#使用set()函數將list2轉為集合去掉重復元素又用list()轉回列表
foriinlist3:#對無重復元素的列表list3迭代
ifiinlist2:
list1.remove(i)#當list3內的元素存在於list2中,則把其元素從list2中刪除,最後就會留下重復元素
print('list1:%s中的重復元素有:%s'%(list1,list2))#組後輸出原數據list1和最終結果list2
#結果:
list1:[1,2,3,4,4,5,6,7]中的重復元素有:[4]
#效果實現了,也沒問題,就是變數使用有點多。看你選擇了
熱點內容
對蟻群演算法 發布:2024-12-26 11:15:53 瀏覽:807
tiobe編程語言社區 發布:2024-12-26 10:48:11 瀏覽:423
日立存儲微碼升級 發布:2024-12-26 10:43:48 瀏覽:152
如何建立家庭網站伺服器 發布:2024-12-26 10:40:46 瀏覽:185
安卓顯示e是什麼意思 發布:2024-12-26 10:35:13 瀏覽:705
電磁爐編程 發布:2024-12-26 10:30:51 瀏覽:97
經典福克斯壓縮比是多少 發布:2024-12-26 10:26:33 瀏覽:747
存取速度最快的存儲器是 發布:2024-12-26 10:17:39 瀏覽:66
我的世界伺服器只能邊跳邊走 發布:2024-12-26 09:55:26 瀏覽:464
銹湖綠色盒子密碼是什麼 發布:2024-12-26 09:53:16 瀏覽:205