官方python3.x所做的一些更改

在python3.x中,raw_input已经删除掉,只能使用input

print "hello world!" 已经不能这样编写,如果在3.x中这样使用print,将导致错误返回。在3.x中使用的规范是这样。 print(...),要加上括号。

在python 3.x中,已经删除cmp内建函数。如果在3.x中想表示类似的代码cmp(a,b)。只能这样写(a>b)-(a<b)替代。

或是导入模块operator来代替cmp。

以下是自己在网上进行搜索查询,找到的关于在3.x中替代cmp的一些参考,资料来源:http://blog.csdn.net/zhuhai__yizhi/article/details/77644915

在没有导入模块情况下,会出现下面的情况:

提示找不到cmp函数了,那么在python3中该如何使用这个函数呢?

所以要导入模块operator。

看python的帮助文档,在oprater这个模块中有了这么几个函数:

operator.lt(a, b) 
operator.le(a, b) 
operator.eq(a, b) 
operator.ne(a, b) 
operator.ge(a, b) 
operator.gt(a, b) 
operator.__lt__(a, b) 
operator.__le__(a, b) 
operator.__eq__(a, b) 
operator.__ne__(a, b) 
operator.__ge__(a, b) 
operator.__gt__(a, b)

这几个函数就是用来替换之前的cmp的,之前使用cmp的同胞们,咱们以后就换上面这些函数咯。
先简单说下这几个函数的意思吧。
lt(a, b) 相当于 a < b
le(a,b) 相当于 a <= b
eq(a,b) 相当于 a == b
ne(a,b) 相当于 a != b
gt(a,b) 相当于 a > b
ge(a, b)相当于 a>= b
函数的返回值不是布尔哦。这点需要注意,还是跟cmp一样返回的是数值哦。

我使用的是python3.6.2版本,在cmd中的python交互模式下进行如下代码测试。

import operator
str1="a"
str2="b"
print(operator.eq(str1,str2))

输出结果为:

False

发现输出的还是布尔值。

时间: 2024-08-10 19:17:22

官方python3.x所做的一些更改的相关文章

最近对项目代码做的一些更改和感想

最近对项目代码做了一些更改,主要的改动是对整个界面框架的改变,因为以前写代码的时候,为了完成功能,没有从上帝视角来思考软件的界面设计,完全是需要这个功能了,怎么可以做到?好,就就这样吧,为了完成功能而对界面不停的修修补补,这样带来的主要坏处有很多: 一是,后续功能加进来的话,需要考虑的地方会越来越多,因为前面的代码耦合程度很高,比如onStart回调,有些事情,既可以在Activity的回调里面去做,也可以在Fragment的回调里面去做,既可以在这里做也可以在那里做,新增加一个功能进来的时候,

记一次AD域域管理员密码更改导致某系统群集管理器故障排查解决过程

环境描述 某公司有一套系统,2台Windows2003系统,采用自带的群集管理器功能实现双机热备功能,正常情况下,服务器10.1.1.1承载中间件应用服务,服务器10.1.1.2承载数据库服务,仅当其中一台服务器故障时才会把资源切换至另一台. 系统名称 系统版本 IP地址 备注 S-EIP-APP Windows2003ENTSP2 10.1.1.1 采用Windows2003自带的群集管理器实现双机热备功能 S-EIP-DATA Windows2003ENTSP2 10.1.1.2 故障表现

Python3.X全栈-Day09-Python语言介绍、变量、基本数据类型及while循环

01 python全栈s3 day9  Python开发系列课程概要 02 python全栈s3 day9  Python作业要求以及博客 03 python全栈s3 day9  编程语言介绍 04 python全栈s3 day9  Python种类介绍 05 python全栈s3 day9  Python安装以及环境变量的操作(一) 06 python全栈s3 day9  Python安装以及环境变量的操作(二) 07 python全栈s3 day9  Python条件语句和基本数据类型(一)

linux环境快速安装python3

之前在linux上安装python3的时候,为了让不影响linux环境原有的python2的环境,选择的方法都是下载对应的linux环境的python包,不过 这里需要注意的是,不要更改linux默认输入python 进入python2的方法,自己安装python3的时候做软链接的时候要做成python3,否则系统的很多工具依赖于python2, 而他们使用的是python2 但是编译安装还是非常慢的,推荐下面一种快速的方法 快速安装python3 这里以centos 为例子,先执行: yum

python3中的range函数返回的是列表吗?

注意,这里说的Python3里面的range函数,和Python2是不同的,返回的不是列表,是可迭代对象. 在python3中,如果执行下面的语句 print(range(10)) 得到结果是 range(0,10) ,而不是期望的[0,1,2,3,4,5,6,7,8,9].但是如果换一种方式 print(list(range(10))) 得到的结果却是 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 那为什么会这样呢?其实在Python3中range()函数返回的对象很像一个列表

kali的安装详解--摘自官方

官方网址:https://www.kali.org/docs/virtualization/install-vmware-workstation-player-kali-guest-vm/ 在VMware(访客VM)中安装Kali 本指南用于在VMware内部虚拟化Kali Linux,使您拥有Kali VM.这是使用Kali的好方法,因为它与主机完全分离,允许您与其他VM(以及主机和网络上的其他计算机)进行交互,并还原为快照. 如果您想在Kali Linux上(作为主机)安装VMware,则可

python2 与 python3的区别总结

python2 与 python3的区别总结 几乎所有的Python 2程序都需要一些修改才能正常地运行在Python 3的环境下.为了简化这个转换过程,Python 3自带了一个叫做2to3的实用脚本(Utility Script),这个脚本会将你的Python 2程序源文件作为输入,然后自动将其转换到Python 3的形式. 案例研究:将chardet移植到Python 3(porting chardet to Python 3)描述了如何运行这个脚本,然后展示了一些它不能自动修复的情况.这

Linux下做软RAID

1.查看有多少块硬盘可用#fdisk -l嗯,一般而言,留下系统盘不动,其它的盘如果大小相同的话,统统合起来做一个raid. 2.决定做什么类型的raid.raid-0.raid-1.raid-5?如果有三块一样大小的盘(或者更多),那么极力推荐raid-5.否则请根据实际情况选择raid-0或者raid-1 3.卸载已挂载的数据盘首先查看下,要做raid的几块盘是不是已经被挂载过了#mount如果有,那么挨个删除数据.然后用umount卸载.然后,还有,打开/etc/fstab,注释掉那些刚卸

Rust 2017 调查报告:学习曲线是最大痛点(最大的问题是这门语言太偏底层了,现在做底层的少了。还有C这个绕不过去的存在)

Rust 官方在社区上做了一次调查,以了解用户如何看待 Rust 的发展.调查共收到 5368 份回复,其中有 大约 2/3 的是 Rust 用户,剩下的 1/3 是非 Rust 用户,调查结果如下. 点此查看完整调查报告 先看正在使用 Rust 的用户情况.在使用年限方面,超过一年的占 42.5% (高于去年的 30%),有 18% 的用户只使用了不到一个月. Rust 目前主要被用于小型和中型项目,大型项目占比 16%(高于去年的 8.9%),这也表明用户越来越有兴趣将 Rust 用在大型项