编辑 :正如agf在评论和其他答案中指出的那样,对于Python 2.7或更高版本有一个字典理解。
def countChar(word): return dict((item, word.count(item)) for item in set(word))>>> countChar('google'){'e': 1, 'g': 2, 'o': 2, 'l': 1}>>> countChar('apple'){'a': 1, 'p': 2, 'e': 1, 'l': 1}
word由于字符串是可迭代的,因此在将其转换为集合之前,无需转换为列表或对其进行排序:
>>> set('google')set(['e', 'o', 'g', 'l'])
对于Python
2.6及以下版本,没有字典理解功能,这可能就是为什么您看到语法错误的原因。另一种方法是使用推导或生成器创建键值元组列表,并将其传递给
dict()内置函数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)