python 如何从字符串中选择最多的字母

How python choose the max letters from string

请告诉我为什么 python 选择这个:

print(max("NEW new"))

OUTPUT: w

我是否理解正确:python 小写在第一位,第二位大写?

谢谢!

这只是 Python 对字符串上 > 的定义的一部分。它对所有大写字母之后的所有小写字母进行字典顺序比较。这是ASCII排序的结果。

因为一个字符串是一个可互换的字符,而 max() 一个一个地遍历它的可迭代参数,returns 比较 > 所有其他的,'w' 就是结果。

max 将比较字符串中每个字符的 ASCII 值。您可以通过尝试 ord('N')ord(' ')ord('w')

来亲眼看看它们是什么

这是 python 解释器

的结果
>>> string = "NEW new"
>>> for s in string:
...     print(s , "--", ord(s))
... 
N -- 78
E -- 69
W -- 87
  -- 32
n -- 110
e -- 101
w -- 119
>>> 

在 ascii 码中,小写字母的代码比大写字母高(即 table 中的 I.E。你可以通过打印每个字母的 ascii 码来看到这一点

for letter in "NEW new":
    print(f'{letter} : {ord(letter)}')

输出

N : 78
E : 69
W : 87
  : 32
n : 110
e : 101
w : 119

如您所见,小写字母 w 具有最高(最大)值。