统计一个单词中不同字符的个数

Counting number of different characters in a word

我正在想一个程序来计算 Python 中一个单词中不同字符的数量。

例如:

如何使用 whilefor 循环来执行此操作?

谢谢

>>> len(set('Banana'))
3

不需要循环。您可以使用 set

查找字符串中的唯一字符
len(set('Banana'))

这将输出3。如果您想查看哪些字符是唯一的,请删除 len 包装器:

set('Banana')

输出:

set(['a', 'B', 'n'])

注意: Bb 是唯一的。如果你有一个像 Baby 这样的词,你会得到这个:

set(['a', 'y', 'B', 'b'])

为防止出现这种情况,请将您的字符串转换为全部大写或全部小写:

set('Baby'.lower())

输出:

set(['a', 'y', 'b'])

注意:对于未来的读者,此解决方案仅被接受,因为 OP 仅限于使用循环。 solution provides a much better alternative using Python's set() 函数。

使用 for 循环:

word='Banana'

L=[]                           #create an empty list
for letter in word:
    if letter not in L:
        L.append(letter)       #append unique chars to list

print len(L)                   #count the chars in list