Python字符串内建函数-字符串比较大小

文章讲述了数字字符串按照数字值进行比较,并介绍了字符串一般比较规则,基于ASCII码进行字符级别的比较。同时提到了Python内置函数ord()和chr()在字符与数字之间的转换,并警告了int()方法对非纯数字字符串的限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们都知道数字是能比较大小的,那么数字字符串也能比较大小吗?字母字符串呢?一起来试试吧 。

数字能比较大小,那么字符串呢?相信大家都很有兴趣来了解。那就举些例子来试试看吧:


>>> '123' > '456'
False
>>> '123' < '456'
True
>>> '123' < '133'
True
>>> '123' < '124'
True

由此我们看到数字字符串是能够比较大小的,而且比较方法和数字比较一样,但是字符串又不止只有数字字符串,那其他的字符串呢?


>>> 'a' < 'b'
True
>>> '12a' < '12b'
True
>>> 'd' > 'b'
True
>>> 'ab' < 'ac'
True
>>> 'b' < 'c'
True
>>>

在字符串比较中,是从第一个字符开始比较的,但是计算机怎么判断字符的大小呢?在这里不得不说说另外一个知识点ASCII码了,ASCII是字符编码标准,规定了常用符号用哪些二进制数来表示。根据ASCII表一些字符可以找到相应的十进制数。

有了ASCII表字符对应的十进制数就一目了然。但是难道我们需要将一张表都记下来吗?记性不好的小伙伴表示很绝望了。我们也不可能每次转换都要翻翻ASCII表。所以python提供了两个内置函数可以将字符转换成数字ord()或者将数字转换成字符chr()。


>>> ord('f')
102
>>> chr(64)
'@'
>>> chr(65)
'A'
>>>

最后,需要提醒一下你们int()方法只能转换纯数字字符串,有时候许多人栽在了这一块。


>>> int('123')
123
>>> int('123a')
Traceback (most recent call last):
File "<pyshell#13>", line 1, in <module>
int('123a')
ValueError: invalid literal for int() with base 10: '123a'
>>>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值