Python 3 如何查找命名为字符串的变量?

对不起,我不知道如何正确命名这个问题:/我有字母表中每个字母的变量。当我检查每个字母的单词时,我想将 +1 添加到与当前名称相同的字母 im 的变量中。我希望它像这样工作: locals(letter) += 1


牧羊人nacy
浏览 175回答 2
2回答

肥皂起泡泡

为所有英文字母创建变量并使用它们是不明智的(26 个变量!听起来很大)。更好的Counter方法:from collections import Counterword = 'hello'print(Counter(word))# Counter({'l': 2, 'h': 1, 'e': 1, 'o': 1})如果您需要计算所有字母:import stringfrom collections import Counterall_letters = string.ascii_lowercaseword = 'hello'd = dict.fromkeys(all_letters, 0)d.update(Counter(word))print(d)

芜湖不芜

您可以通过执行此操作来访问变量...locals()[letter]但是,您需要检查以字符串命名的变量的值这一事实表明一个糟糕的设计选择。相反,您应该将这些值存储在dict.letters = {    'a': 0,    'b': 0,    'c': 0,    ...}letters['a'] += 1
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python