Python中数字和字符串比较大小问题
来源:互联网 发布:淘宝二手镜头可以用吗 编辑:程序博客网 时间:2024/05/22 11:33
python 2.x中 不同数据类型可以相互比较的, 因此如果不注意类型验证就会出现’0.3’ > 1000这种无语法错误却明显不符合期望的结果,有一次我发现代码里的条件不管前台怎么传值都成立,最终才发现2.7的这个问题,在此记录一下
作者:知乎
任何两个对象都可以比较相同类型的对象(实例),如果是数字型(int/float/long/complex),则按照简单的大小来比较;如果是非数字型,且类(型)中定义了cmp(含gt,lt等)则按照cmp来比较,否则按照地址(id)来比较不同类型的对象(实例),如果其中一个比较对象是数字型(int/float/long/complex等),则数字型的对象<其它非数字型的对象;如果两个都是非数字型的对象,则按照类型名的顺序比较,如{} < “abc”(按照”dict” < “str”),而”abc” > [1,2], “abc” < (1,2)。对于自定义的类(型)实例,如果继承自基本类型,则按照基本类型的规则比较(1-3)。否则,old-style class < new-style class, new-style class之间按照类型名顺序比较,old-style class之间按照地址进行比较bool类型是int的子类,且True=1, False=0,比较时按照1-4来比较,如True > -1, True < 4.2, True < “abc”等上面的回答是针对Python2.x,3.x的有较大的变化,如str和int比较时会抛出异常等。
阅读全文
0 0
- Python中数字和字符串比较大小问题
- linux shell 中比较数字 、字符串 大小
- oracle中字符串的大小比较,字符串与数字的比较和运算
- JavaScript-数字和字符串比较大小
- JavaScript中数字比较大小的问题
- Jquery中字符串比较和数字比较
- js中比较数字大小和字符串的匹配对比小结
- java数字字符串比较大小
- javascript中的字符串数字比较大小的问题
- Python中字符和数字之间是怎么比较大小的?
- python中比较数据大小的问题
- mysql中字符串和数字比较
- js中数字和字符串进行比较
- 数字和字符串比较
- Oracle一列中有数字和文字比较大小
- python 数字和字符串转换问题
- Js、Jquery字符串数字比较大小!
- JavaScript 数字与字符串 比较大小
- HashMap,LinkedHashMap,TreeMap的有序性
- 写Rule(三)
- 万圣节惊天大劫案
- Android MVP模式之模拟登陆功能
- 开发后台界面用 div好,还是frame 框架 好?
- Python中数字和字符串比较大小问题
- Address already in use: JVM_Bind<null>:80 解决方案
- 06-python中高级数据类型
- Fly拦截全局Ajax请求
- Android常用设计模式——观察者模式
- 音乐 和视频播放
- 第十周项目实践 哈夫曼树的建立&&哈夫曼编码
- 如何让外网访问本地WampServer站点
- 1