3

我对 Python 3 和编程非常陌生。我试图找到一种算法来找出一个句子何时是一个 pangram。借助 string 模块的功能,我已经解决了讨价还价的问题,但我还需要找出非 pangrams 中有多少不同的字母(已经将它们切换为小写字母)。

任何帮助都会非常受欢迎。

4

3 回答 3

3

尝试查看这组字母的长度:

len(set(yourstring))


In [8]: set('lowercase')
Out[8]: set(['a', 'c', 'e', 'l', 'o', 's', 'r', 'w'])

In [9]: len(set('lowercase'))
Out[9]: 8

 

不要忘记删除空格。

In [10]: len(set('The quick brown fox jumps over the lazy dog'.lower().replace(' ', '')))
Out[10]: 26
于 2013-03-07T22:34:07.873 回答
1

如果您不想计算标点符号,请尝试以下操作:

s = "It's the economy, stupid!"
t = set(c.lower() for c in s if c.isalnum())
len(t) #returns 13

或者,如果您只想要字母:

s = "It's the economy, stupid!!!11!!"
t = set(c.lower() for c in s if c.isalpha())
len(t) #returns 13
于 2013-03-07T23:12:34.223 回答
0

你可以试试这个:

s = 'The quick brown fox jumps over the lazy dog'
count = len(set(c.lower() for c in s if c != ' '))

在这里,计数将是 26。

于 2016-07-13T14:04:04.400 回答