我有一個與字典的鍵值相同的列表。我想編寫一個代碼,它可以根據字典的值對列表中的值進行多少次操作(例如,將它們加1)。通過字典對列表進行迭代
因此,例如,
listy=['dgdg','thth','zuh','zuh','thth','dgdg']
dicty = {'dgdg':1, 'thth':2, 'zuh':5}
我試過這段代碼:
def functy (listx,dictx):
for i in range (0, len(listx)):
for k,v in dictx:
if listx[i]==k:
v=v+1
else:
pass
functy(listy, dicty)
但它提出了這樣的錯誤:
Traceback (most recent call last):
File "C:\Python34\8.py", line 12, in <module>
functy(listy, dicty)
File "C:\Python34\8.py", line 6, in functy
for k,v in dictx:
ValueError: too many values to unpack (expected 2)
你能告訴我,爲什麼它不工作,我怎麼能做到嗎?
可以在錯誤代碼OP看到使用[Python的3.4](https://docs.python.org/3/whatsnew/3.0.html#views-and-iterators-instead-列表) –
啊,的確如此。感謝那。 – mic4ael