python 元组遍历_Python中的for循环:元组、列表、字典的遍历和相互转化
Python for循環可以遍歷任何序列的項目,如列表、字符串、元組、字典、集合等序列類型。
語法:
for循環的語法格式如下:
for iterating_var in sequence:statements(s)流程圖:
animals="dog","cat","pig""bird" for animal in animals:print(animal)#for循環中,print需要縮進運行結果:
dog cat pig bird可以看到,使用 for 循環的過程中,迭代變量會先后被賦值,并代入循環體中使用。
Python for循環的具體應用
for 循環進行數值循環
在使用 for 循環時,最基本的應用就是進行數值循環。
比如說,想要實現從 1 到 100 的累加,可以執行如下代碼:
print("計算 1+2+...+100 的結果為:")#保存累加結果的變量 result = 0 #逐個獲取從 1 到 100 這些值,并做累加操作 for i in range(101):result += i print(result)運行結果為:
計算 1+2+...+100 的結果為: 5050上面代碼中,使用了 range() 函數,此函數是 Python 內置函數,用于生成一系列連續整數,多用于 for 循環中。
for循環遍歷列表和元組
當用 for 循環遍歷 list 列表或者 tuple 元組時,其迭代變量會先后被賦值為列表或元組中的每個元素并執行一次循環體。
下面程序使用 for 循環對列表進行了遍歷:
my_list = [1,2,3,4,5] for ele in my_list:print('ele =', ele)程序執行結果為:
ele = 1 ele = 2 ele = 3 ele = 4 ele = 5在Python中,for循環迭代元組與序列差不多,下面程序使用 for 循環對元組進行了遍歷:
my_tuple = tuple("23333") print(my_tuple) #<<< ('2', '3', '3', '3', '3') for value in my_tuple:print(value)程序執行結果如下:
3 2 3 3 3注意:因為對于字符型的集合,輸出集合中的元素的時候,不會保存順序,所以集合中元素的順序通常是沒有定義的,與序列相同for word in words中的word標識符也是可以隨意更改。
for 循環遍歷字典
在使用 for 循環遍歷字典時,經常會用到和字典相關的 3 個方法,即 items()、keys() 以及 values(),如果使用 for 循環直接遍歷字典,則迭代變量會被先后賦值為每個鍵值對中的鍵。
my_dic = {'python':"1",'shell':"2",'java':"3"} for ele in my_dic:print('ele =', ele)程序執行結果為:
ele = python ele = shell ele = java直接遍歷字典,和遍歷字典 keys() 方法的返回值是相同的。
循環迭代鍵:
d = {'x':1,'y':2,'z':3}for key in d.keys():print(key)除此之外,我們還可以遍歷字典 values()、items() 方法的返回值。例如:
循環迭代值:
d = {'x':1,'y':2,'z':3}for value in d.values():print(value) my_dic = {'python':"1",'shell':"2",'java':"3"} for ele in my_dic.items():print('ele =', ele)d.items方法還可以將鍵-值對作為元組放回,for循環的一大好處就是可以在循環中使用序列解包
程序執行結果為:
ele = ('python', '1') ele = ('shell', '2') ele = ('java', '3')元組,列表,字典之間的轉換
元組轉換為列表
fruits = ('apple','banana','orange')#元組轉換為列表: list(fruit)#元組不能直接轉換為字典,附: #元組轉換為字符串: fruits.__str__()列表轉換為元組
fruit_list = ['apple','banana','orange']#列表轉換為元組: tuple(fruit_list)#列表不能直接轉換為字典,附: #列表轉換為字符串: str(fruit_list)字典轉換為元組
可以使用函數 tuple() 和 list() 將字典轉換為元組和列表,但要注意的是,這里的轉換后和之前的元素順序是不同的,因為字典類似于散列,列表 類似于鏈表,元組類似于列表只是元素無法改變,所以,要把散列轉換為鏈表而順序不變是不可行的。但可以借助于有序字典OrderedDict,有序字典是字典的子類,它可以記住元素添加的順序,從而得到有序的字典。有序字典這里就不深入探討,給出普通字典的例子參考,代碼如下:
fruit_dict = {'apple':1, 'banana':2, 'orange':3}#將字典的key轉換為元組: tuple(fruit_dict) #將字典的value轉換為元組: tuple(fruit_dict.value())#將字典的key轉換為列表: list(fruit_dict) #將字典的value轉換為列表: list(fruit_dict.value())#附: #將字典轉換為字符串: str(fruit_dict)字符串轉換為元組
要將字符串轉換為指定的數據結構,那么字符串就必須符合指定數據結構的格式,并借助于 eval() 函數
#將字符串轉換為元組: str = "(1,2,3)" tuple(eval(str)) #將字符串轉換為列表: str = "(1,2,3)" list(eval(str)) #將字符串轉換為字典: str = "{'a':1 ,'b',2}" eval(str)總結
以上是生活随笔為你收集整理的python 元组遍历_Python中的for循环:元组、列表、字典的遍历和相互转化的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: Linux 中的文件压缩与解压
 - 下一篇: TongWeb