空字符串计数、让字典可排序...Python冷知识(五)

本文转载自Python编程时光(ID: Python-Time)
冷知识系列,直至今日,已经更新至第五篇。前四篇给你准备好了,还没阅读的可以学习一下。
空字符串计数
求一个字符串里,某子字符(串)出现的次数。在Python中使用 count() 函数,就可以轻松实现。
比如下面几个常规例子
>>>?"aabb".count("a")
2
>>>?"aabb".count("b")
2
>>>?"aabb".count("ab")
1
但是如果使用空字符串呢,你可能想不到会是这样的结果。
>>>?"aabb".count("")
5
具体原因,我不敢妄下结论。
由此我还衍生出另一个想法,实验了下。不知道空字符串,是一种什么样的存在,难道字母与字母之间 “缝隙” 也算吗?
>>>?""?in?""
True
>>>?""?in?"ab"
True
有兴趣的可以去看看CPython的源码实现。
负负得正
从初中开始,我们就开始接触了负数?这个概念。知道了负负得正,这和武侠世界里的以毒功毒,有点神似。
Python 作为一门高级语言,它的编写符合人类的思维逻辑,这其中也包括负负得正这个思想。
>>>?5-3
2
>>>?5--3
8
>>>?5+-3
2
>>>?5++3
8
>>>?5---3
2
数值与字符串比较
在 Python2 中,数字可以与字符串直接比较。结果是数值永远比字符串小。
>>>?100000000?< ?""
True
>>>?100000000?< ?"ming"
True
但在 Python3 中,却不行。
>>>?100000000?< ?""
TypeError:?'< '?not?supported?between?instances?of?'int'?and?'str'
循环中的局部变量泄露
在Python 2中x的值在一个循环执行之后被改变了。
#?Python2
>>>?x?=?1
>>>?[x?for?x?in?range(5)]
[0,?1,?2,?3,?4]
>>>?x
4
不过在Python3 中这个问题已经得到解决了。
#?Python3
>>>?x?=?1
>>>?[x?for?x?in?range(5)]
[0,?1,?2,?3,?4]
>>>?x
1
让字典可排序
字典不可排序的思想,似乎已经根深蒂固。
#?Python2.7.10
>>>?mydict?=?{str(i):i?for?i?in?range(5)}
>>>?mydict
{'1':?1,?'0':?0,?'3':?3,?'2':?2,?'4':?4}
在 Python3 中字典已经是有序的。
#?Python3.6.7
>>>?mydict?=?{str(i):i?for?i?in?range(5)}
>>>?mydict
{'0':?0,?'1':?1,?'2':?2,?'3':?3,?'4':?4}
(本文为 AI科技大本营转载文章,转载请联系原作者)
◆
CTA核心技术及应用峰会
◆
5月25-27日,由中国IT社区CSDN与数字经济人才发展中心联合主办的第一届CTA核心技术及应用峰会将在杭州国际博览中心隆重召开,峰会将围绕人工智能领域,邀请技术领航者,与开发者共同探讨机器学习和知识图谱的前沿研究及应用。
更多重磅嘉宾请识别海报二维码查看,目前会议早鸟票发售中(原票价1099元),点击阅读原文即刻抢购。添加小助手微信15101014297,备注“CTA”,了解票务以及会务详情。
推荐阅读

关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
关注网络尖刀微信公众号随时掌握互联网精彩
- 1 习近平将发表二〇二六年新年贺词 7904141
- 2 2026年国补政策来了 7808738
- 3 东部战区:开火!开火!全部命中! 7712893
- 4 2026年这些民生政策将惠及百姓 7616985
- 5 小学食堂米线过期2.5小时被罚5万 7519709
- 6 解放军喊话驱离台军 原声曝光 7428214
- 7 为博流量直播踩烈士陵墓?绝不姑息 7327605
- 8 每月最高800元!多地发放养老消费券 7238391
- 9 数字人民币升级 1月1日起将计付利息 7141831
- 10 2026年1月1日起 一批新规将施行 7040675





![艾米刚收工!!来撕拉一下[送花花][送花花][嘻嘻][嘻嘻]#米有物料啦#](https://imgs.knowsafe.com:8087/img/aideep/2025/5/22/9818f74b50b923eda16283e5f1b21599.jpg?w=250)



AI100
