簡體   English   中英

Python 中的列表/字典理解,使用字符串中的鍵和值更新字典

[英]List/Dict comprehension in Python to update a dictionary with keys and values from a string

有誰知道如何在一行中將下面的 for 循環轉換為列表或字典理解? type(letter) = string,type(stringOne) = string,type(dictResult) = dictionary。例如,stringOne = 'abcddd',我希望 output 為 dictResult = {'a': 1, 'b': 1 , 'c': 1, 'd': 3} 謝謝!!!

stringOne = 'abcddd'
dictResult = {}
for letter in stringOne:
    dictResult[letter] = dictResult.get(letter,0) + 1

使用 set 查找唯一鍵,然后計數。 請注意,該set不會保留(鍵)插入順序!

stringOne = 'abcddd'

dictResult = {char: stringOne.count(char) for char in set(stringOne)}

print(dictResult)

使用 Counter 就可以了。 節省您為字符串做循環的時間。 如果您需要它是字典類型,可以稍后轉換為字典。

from collections import Counter
counter = Counter(stringOne)
dict(counter)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM