python字典遍歷鍵值
1. python 字典作為函數參數,編寫函數實現功能:將一個字典類型數據傳遞給函數經函數處理後,依次輸出鍵值
defexchange(d):
res=dict((v,k)fork,vind.items())
print(res)
print(d)
一行代碼完成交換的,按你的需求定義了一個函數
2. python循環遍歷字典元素問題求指教
你的x,y是代表的未知元素吧,不然a就只有{('x','y'):(0,0)}這一個元素了。下面說問題:
對於字典的key值遍歷可以用items()函數來實現,比如下面的代碼:
a={('a','b'):(0,0),('c','d'):(1,1),('e','f'):(2,2)}
fori,jina.items():
print(i,':',j)
輸出的結果是:
('c', 'd') : (1, 1)
('e', 'f') : (2, 2)
('a', 'b') : (0, 0)
也就是說對for i,j in a.items()這句話,i得到是字典的key值,j得到的是字典的value,如果想只遍歷字典的key值,也就是你要的('x','y'),那麼把print(i,' : ',j)改成print(i)就可以了(具體輸出格式你自己定製就好,不一定按我的)
3. Python字典鍵值對的添加和遍歷
添加鍵值對
首先定義一個空字典
>>> dic={}
直接對字典中不存在的key進行賦值來添加
>>> dic['name']='zhangsan'
>>> dic
{'name': 'zhangsan'}
如果key或value都是變數也可以用這種方法
>>> key='age'
>>> value=30
>>> dic[key]=value
>>> dic
{'age': 30. 'name': 'zhangsan'}
這里可以看到字典中的數據並不是按先後順序排列的,如果有興趣,可以搜一搜數據結構中的——哈希表
從python3.7開始,字典按照插入順序,實現了有序。修改一個已存在的key的值,不影響順序,如果刪了一個key後再添加該key,該key會被添加至末尾。標准json庫的mp(s)/load(s)也是有序的
還可以用字典的setdefault方法
>>> dic.setdefault('sex','male')
'male'
>>> key='id'
>>> value='001'
>>> dic.setdefault(key,value)
'001'
>>> dic
{'id': '001', 'age': 30. 'name': 'zhangsan', 'sex': 'male'}
4. python如何遍歷多鍵值的字典並使用對應鍵的值來替換
dict = {('絲印兩處', '絲印二處', '絲印兩道', '絲印二道', '絲印2道'): '絲印2處', ('絲印三處', '絲印三道', '絲印3道'): '絲印3處'}
ss = ["黑色MI0000C-BK002 含三道絲印", "黑色MI0000C-BK002 含絲印三道", "黑色MI0000C-BK002 含3道絲印"]
for s in ss:
for k, v in dict.items():
for src in k:
s = s.replace(src, v)
print(s)
注意:你的dict不足以涵蓋你的輸入,所以只有中間那句是替換了
5. 為什麼Python無法遍歷字典中的字典遍歷後會直接輸出字典的名字
python字典是可變類型,不能用作字典的鍵(key);
遍歷字典時使用.items() 返回字典的key 和val;
遍歷字典中的字典,你需要遍歷.items()返回的 val;
6. python怎麼遍歷字典的key
aDict={'key1':'value1','key2':'value2','key3':'value3'}
print'-----------dict-------------'
fordinaDict:
print"key:%s"%(d,)
7. python怎樣遍歷.py的內容
列表的遍歷
方法一:通過for循環
li = [i for i in range(10)]
for i in li:
print(i)
方法二:通過while循環
# 雖然for循環已經很好用了,但是在有些情況下,使用while循環可以更靈活
# 只需要將判斷條件設置為小於列表長度,即可完成列表通過while循環的遍歷
li = [i for i in range(10)]
i = 0
while i < len(li):
print(li[i])
i += 1
方法三:配合enumerate使用,同時獲取列表的索引
li = [i + 1 for i in range(10)]
# 此時,i為一個元組,元組的第一個元素為索引,第二個元素為原列表的元素
# 因此,在遍歷列表的同時,需要同時獲取坐標的情況下,可以配合enumerate()一起使用
for i in enumerate(li):
print(i)
字典的遍歷
字典的遍歷和列表有一些不同,因為字典有鍵和值兩個關鍵部分。默認的遍歷情況,是遍歷字典的鍵,當然,可以通過字典的鍵取得值,也可以直接遍歷值,或者直接遍歷鍵和值。
方法一:直接使用for循環
直接使用for循環對一個字典進行遍歷,默認取得的是字典的鍵
dt = {i: i + 1 for i in range(10)}
for i in dt:
print("字典的鍵:", i) # 字典的鍵
print("字典的值:", dt[i]) # 字典的值
方法二:遍歷dict.keys()
這種方法與方法一的效果其實是一樣的,同樣是獲取字典的鍵
dt = {i: i + 1 for i in range(10)}
for i in dt.keys():
print("字典的鍵:", i) # 字典的鍵
print("字典的值:", dt[i]) # 字典的值
方法三:遍歷dict.values()
這種方法與方法一和二很不相同,因為它只獲取了字典的值
dt = {i: i + 1 for i in range(10)}
# 這是很特殊的方法,因為它沒有獲取字典的鍵
for i in dt.values():
print("字典的值:", i) # 此時i不再是字典的鍵,而是值
方法四:遍歷dict.items()
這種方法一般來說要更好,因為它同時獲取到了字典的鍵和值,而且性能上要高於先獲取鍵,再通過鍵獲取對應的值
dt = {i: i + 1 for i in range(10)}
for i in dt.items():
print("字典的鍵值對:", i)
print("字典的鍵:", i[0])
print("字典的值:", i[1])
總結
1,列表的遍歷比較簡單,除了配合enumerate()使用,可以同步獲取索引以外,並沒有特別值得糾結的。
2,字典的遍歷方法比較多,其中第四種是能適用於一切情況的,前兩種也可以適用於一切情況,但是如果你同時需要獲取鍵和值,性能不如第四種要好。第三種比較特別,除非你真的只需要字典的值,否則它在多數情況下是不能夠滿足需求的。
8. 新手小白:python3中如何遍歷列表中的字典的value並存放到一個變數中,最好是循環遍歷
values_list=[forvaluein_dict.values()for_dictin_list]