聊聊Python String型列表求最值的问题


Posted in Python onJanuary 18, 2022

最近在写一个项目的时候发现了个很神奇的问题

temp_list=['9','10','10','9','10']
print(max(temp_list)) # 9
print(min(temp_list)) # 10

最大值变成了9,而最小值变成了10。导致我在一个Excel表中的数据老是判断错误

分析之后原因如下:

如果比较字符串的大小,则比较的是字符的ASCII编码的大小。

在比较时,设置一个计数器,从零开始,一直循环到最短的那个字符结束,一位一位进行比较,

1.如果 字符串1的第n位的ASCII码值 等于 字符串2的第n位的ASCII码值
则 继续比较下一位
2.如果 字符串1的第n位的ASCII码值 大于 字符串2的第n位的ASCII码值
则 输出结果:1,表示字符串1 > 字符串2;
3.如果 字符串1的第n位的ASCII码值 小于 字符串2的第n位的ASCII码值
则 输出结果:-1 表示字符串1 < 字符串2;
4.如果 每一位的ASCII码值都相等,而且长度相同,
则 输出结果:0 表示字符串1 == 字符串2;
5.如果 字符串1是字符串2的前m位,例如 abcd 与abcdef 比较,
则 字符串1<字符串2.
原因是,到第5位时,字符串1的ASCII值是0,而字符串2的ASCII值为'e',即十进制的101,当然是字符串2大了.

这边的话,相当于是9跟1作比较,固然最后得出来的字符串‘9’大于‘10’

比较好的办法就是写个函数,把字符串转换成int型

def stringToInt(temp_list):
    tt_list=[]
    for i in temp_list:
        tt_list.append(float(i))
    return tt_list

字符串的问题虽然简单,但是很容易出错,另外,Python中做判断的时候一定要注意数据类型

到此这篇关于Python String型列表求最值的问题的文章就介绍到这了,更多相关Python String型列表内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python中使用sys模板和logging模块获取行号和函数名的方法
Apr 15 Python
python的类变量和成员变量用法实例教程
Aug 25 Python
浅析Python多线程下的变量问题
Apr 28 Python
在Linux系统上通过uWSGI配置Nginx+Python环境的教程
Dec 25 Python
Python reduce()函数的用法小结
Nov 15 Python
Python读取视频的两种方法(imageio和cv2)
Apr 15 Python
利用python的socket发送http(s)请求方法示例
May 07 Python
python实现的MySQL增删改查操作实例小结
Dec 19 Python
Python字符串逆序输出的实例讲解
Feb 16 Python
对Python中TKinter模块中的Label组件实例详解
Jun 14 Python
python利用后缀表达式实现计算器功能
Feb 22 Python
python脚本框架webpy模板控制结构
Nov 20 Python
Python的三个重要函数详解
Jan 18 #Python
python多线程方法详解
Jan 18 #Python
用Python生成会跳舞的美女
基于Pygame实现简单的贪吃蛇游戏
Dec 06 #Python
Python可变集合和不可变集合的构造方法大全
Dec 06 #Python
Python实现视频中添加音频工具详解
Dec 06 #Python
Python实现GIF动图以及视频卡通化详解
You might like
强烈推荐:php.ini中文版(1)
2006/10/09 PHP
用PHP+MySQL搭建聊天室功能实例代码
2012/08/20 PHP
php基于socket实现SMTP发送邮件的方法
2015/03/05 PHP
php实现字符串翻转的方法
2015/03/27 PHP
laravel自定义分页效果
2017/07/23 PHP
在phpstudy集成环境下的nginx服务器下配置url重写
2019/12/02 PHP
[HTML/CSS/Javascript]WWTJS
2007/09/25 Javascript
jQuery JSON的解析方式分享
2011/04/05 Javascript
JavaScript实现列出数组中最长的连续数
2014/12/29 Javascript
JS+CSS实现模仿浏览器网页字符查找功能的方法
2015/02/26 Javascript
浅谈$(document)和$(window)的区别
2015/07/15 Javascript
jQuery ready()和onload的加载耗时分析
2016/09/08 Javascript
vue中使用localstorage来存储页面信息
2017/11/04 Javascript
解决百度Echarts图表坐标轴越界的方法
2018/10/17 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
本地文件上传到七牛云服务器示例(七牛云存储)
2014/01/11 Python
初学Python函数的笔记整理
2015/04/07 Python
利用python程序帮大家清理windows垃圾
2017/01/15 Python
Python数据结构之翻转链表
2017/02/25 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
python实现简单日期工具类
2019/04/24 Python
深入了解Python 变量作用域
2020/07/24 Python
Python加载数据的5种不同方式(收藏)
2020/11/13 Python
利用CSS3的transition属性实现滑动效果
2015/08/05 HTML / CSS
电大自我鉴定范文
2013/10/01 职场文书
大学生应聘自荐信
2013/10/11 职场文书
周年庆典主持词
2014/04/02 职场文书
开展创先争优活动总结
2014/08/28 职场文书
小学元宵节活动总结
2015/02/06 职场文书
党员年终个人总结
2015/02/14 职场文书
2015年高校教师个人工作总结
2015/05/25 职场文书
幼儿园小班教育随笔
2015/08/14 职场文书
历史名人教你十五个读书方法,赶快Get起来!
2019/07/18 职场文书
简短的36句中秋节祝福信息语句
2019/09/09 职场文书
你真的了解redis为什么要提供pipeline功能
2021/06/22 Redis
Nginx使用Lua模块实现WAF的原理解析
2021/09/04 Servers