为什么print('a'>'b')为假,而print('a'>'A')为真?

问题描述 投票:0回答:3

[当我们执行程序print('a' > 'b')时,会给我们答案为False。

[当我们执行程序print('a' > 'A')时,会给我们答案为True。

请帮助我进行详细说明。

python-3.x output ascii
3个回答
4
投票

[使用<>比较字符时,将其转换为整数。

根据ASCII Table

含义:

  • a为97十进制
  • b为98十进制
  • A为65十进制
  • B是十进制66

因此:

[print('a' > 'b')为假,因为print(97 > 98)

然后:

[print('a' > 'A')为真,因为print(97 > 65)


1
投票

请检查字符的ASCII码。

enter image description here

您也可以使用python检查它

>>> ord('a')
97
>>> ord('b')
98
>>> ord('A')
65

也可以通过以下方式获得反面>>

>>> chr(97)
'a'
>>> chr(98)
'b'
>>> chr(65)
'A'

0
投票

首先,查看ASCII table,您可以在其中找到所有标准字符的数字映射。

© www.soinside.com 2019 - 2024. All rights reserved.