Python中sorted()排序与字母大小写的问题
作者:ImwaterP 发布时间:2022-08-18 16:23:49
标签:Python,sorted()排序
今天我在练习python时,对字典里的键用sorted排序时发现并没有按照预期排序
研究后发现字母大小写会影响排序
首先创建一个字典,键里面的首字母有大写有小写
favorite_digit = {
'john' : 4,
'Tom' : 5,
'Lisa' : 9,
'liu' : 5,
'alice' : 0,
}
for name in sorted(favorite_digit.keys()):
print(name.title())
运行后发现与预期不符合。
Lisa
Tom
Alice
John
Liu
接着我不使用title函数又进行排序
for name in sorted(favorite_digit.keys()):
print(name)
运行结果
Lisa
Tom
alice
john
liu
结果发现,sorted先对首字母大写进行排序,然后才对小写字母排序。正因为我使用了title,使得排序看起来十分混乱。
为了避免此类情况的发生,我先创建一个空白字典将原先字典键小写化储存,然后遍历原先的字典,将键转化为小写,同时将数据储存在新的字典中。
favorite_digit_lower = {} #先创建一个字典将原先字典键小写化储存
for name, digit in favorite_digit.items():
name = name.lower() #然后遍历原先的字典,将键转化为小写,同时将数据储存在新的字典中
#print(name) #这里也可以加一个print检查name是否成功写入小写
favorite_digit_lower [name] = digit #将原来字典的内容复制到新字典里
for name in sorted(favorite_digit_lower.keys()):
print(name.title()) #再次打印,结果为预期结果
打印结果
Alice
John
Lisa
Liu
Tom
来源:https://blog.csdn.net/ImwaterP/article/details/88322971


猜你喜欢
- 马上就是圣诞节了,先提前祝大家圣诞快乐!:christmas_tree::christmas_tree::christmas_t
- MySQL出现乱码的原因要了解为什么会出现乱码,我们就先要理解:从客户端发起请求,到MySQL存储数据,再到下次从表取回客户端的过程中,哪些
- 引言在做项目的时候难免会遇到很多奇葩解析字符串的需求,简单的字符串通过内置方法就能解析出来,如果遇到复杂的就不好办了,那我们如何解决复杂字符
- 需要ocr识别,推荐一个Python免费的验证码识别-ddddocr安装过程:1、镜像安装:pip install ddddocr -i h
- 安装(fastcgi模式)的时候,常常有这样一句命令:/usr/local/webserver/php/bin/phpize一、phpize
- 本文实例讲述了python实现telnet客户端的方法。分享给大家供大家参考。具体如下:python实现的telnet客户端程序,pytho
- 如何一行行地读取文件?这样就可以做到一行行地读出了:dim input(30) ' 定义一个数组,大小
- 1、打开Sqlserver,选择登录名下的账户右击点击属性2、右击点击属性查看强制过期是否被勾选上,如勾选上,会在一段时间后该账户不能正常使
- 即使打开了strict和warnings选项也无妨,下面代码并无错误和警告。#!/usr/bin/perluse strict;use wa
- 环境: Python3 + windows。开发工具:Anaconda + Jupyter / VS Code。学习效果:1.认识爬虫 /
- 我就废话不多说了,大家还是直接看代码吧!import pymysql,hashlib结果:单条结果 {'id': 1,
- Pycharm创建的项目,使用了虚拟环境,对库的版本进行管理;有些项目的对第三方库的版本 要求不同,可使用虚拟环境进行管理直接想通过pip命
- 条件选取:torch.where(condition, x, y) → Tensor返回从 x 或 y 中选择元素的张量,取决于 condi
- 本文实例讲述了javascript insertAfter()定义与用法。分享给大家供大家参考,具体如下:HTML部分:<div id
- 本文要实现的功能是:根据下拉列表的选项将数据库中对应的内容显示在页面,选定要排除的选项后,提交剩余的选项到数据库。为了方便前后台交互,利用了
- 本教程为大家分享了Python搭建HTTP服务器和FTP服务器的具体步骤,供大家参考,具体内容如下默认安装版本为pytho2.7http服务
- 下面十条内容的标题原本是《10 Lessons for Young Designers》,是John C. Jay给年青设计师们的十条经验教
- 下标所谓下标就是编号,就好比超市中存储柜的编号,通过这个编号就能找到相应的存储空间。Python中字符串,列表,元祖均支持下标索引。例如:#
- 本文实例讲述了Python使用wget实现下载网络文件功能。分享给大家供大家参考,具体如下:wget是一个从网络上自动下载文件的自由工具。它
- 前言在学习go语言时,做算法题会很经常遇到go语言的各种int类型,为什么会有int、int8、int16等等的类型呢?为什么不像java一