Python 社区,有这么个怪问题:“学 Python 到底是学2还是学3?”...今天给大家介绍 Python2 和 Python3 的一些主要区别 ?...image.png True和False True 和 False 在 Python2 中是两个全局变量(名字),在数值上分别对应 1 和 0,既然是变量,那么他们就可以指向其它对象,例如: # py2...而 Python3 修正了这个缺陷,True 和 False 变为两个关键字,永远指向两个固定的对象,不允许再被重新赋值。...Python2 中的 range 和 xrange 函数合并成了 range,如果同时兼容2和3,可以这样: try: range = xrange except: pass 另外,字典对象的
该篇博客主要记录在使用Python过程中发现的Python 2和Python 3的区别 文章目录 1. 列表推导变量泄露问题 1....列表推导变量泄露问题 在Python 2中,如果列表推导中的变量和前面的变量相同的话,则会改变该变量的值: >>> x = 'abc' >>> dummy = [x for x in 'abc'] >>...> x 'c' Python 3则不存在这个问题: >>> x = 'abc' >>> dummy = [x for x in 'abc'] >>> x 'abc'
python3的安装需要的依赖 yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel...python2、python2.7三个ln,是对应版本的python。...sudo mv python python.bak, sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python Yum对应python版本修改.../usr/bin/python2.7 1.修改yum配置文件 sudo vi /usr/bin/yum 2.urlgrabber文件修改 sudo vim /usr/libexec/urlgrabber-ext-down...3.yum-config-manager修改 sudo vim /usr/bin/yum-config-manager pip pip2的安装 yum install python-pip pip3的安装
需求目的:把一个 ip 地址使用 socket.inet_aton() 转化后和一个字符串组合,然后算出 MD5。 下面是 Python2.6 的实现代码: #!...也就是说 Python2.6 和 python3.4 中对于 socket.inet_aton(ip) 的实现是有差异的,查官方文档吧。...和 Python3.4 中的实现也有差异,继续看文档。...python3 # -*- coding: utf-8 -*- import socket import hashlib import binascii if __name__ == '__main...python3 # -*- coding: utf-8 -*- import socket import hashlib import binascii if __name__ == '__main
使用python开发,环境有Python2和 python3 两种,有时候需要两种环境切换使用,下面提供详细教程一份。...1、下载python3和python2 进入python官网,链接https://www.python.org/ 选择Downloads--->Windows,点击进入就可以看到寻找想要的python版本...至此,python2和python3安装完毕。 特别说明:此时运行“cmd”命令进入DOS命令提示框,输入python仍然显示python3版本,接下来请参考本系列教程二。...注意:python3安装时可以选择自动添加到系统环境变量,如未选择,方法和python2添加过程相同。...5、修改python.exe名字为python2.exe和python3.exe 找到python2的安装目录,修改python2.7.9中python.exe和pythonw.exe的名称为
所以兼容Python3已经可以说非常必要了,但有些常用的库还没有升级到Python3,所以我们看下如何写出兼容2和3的代码。 Python 2 or 3 ?...旨在解决和修正 Python 2 遗留的设计缺陷、清理代码库冗余、追求有且仅有一种最佳实践方式来执行任务等问题。...Python 2.7 的历史任务在于通过提供 2 和 3 之间的兼容性措施,使 Python 2.x 的用户更容易将代码移植到 Python 3.x 上。...不同与兼容 future 模块是我们首先需要了解的,该模块最主要的作用是支持在 P2 中导入那些在 P3 才生效的模块和函数。...不过,由于 P2 同时支持两套字符编码,就难免多出了一些标识和转换的麻烦。 而 P3 统一使用 Unicode 字符编码,这节省了开发者的时间,同时也可以轻松地在程序中输入和显示更多种类的字符。
使用python开发,环境有Python2和 python3 两种,有时候需要两种环境切换使用,下面提供详细教程一份。...1、下载python3和python2 进入python官网,链接https://www.python.org/ 选择Downloads--->Windows,点击进入就可以看到寻找想要的python...至此,python2和python3安装完毕。 特别说明:此时运行“cmd”命令进入DOS命令提示框,输入python仍然显示python3版本,接下来请参考本系列教程二。...注意:python3安装时可以选择自动添加到系统环境变量,如未选择,方法和python2添加过程相同。...5、修改python.exe名字为python2.exe和python3.exe 找到python2的安装目录,修改python2.7.9中python.exe和pythonw.exe
linux自带python2,手动安装python3,sudo apt-get install python3.5 下载pip,安装到python2 使用easy_install 安装pip;sudo...python3 -m easy_install pip pip install virtualenv和pip install virutalenvwrapper 编辑.bashrc文件 :export...virtualenvwrapper.sh或source /usr/local/bin/virtualenvwrapper.sh 执行命令source .bashrc mkvirtualenv 名字 -p python3...(指定任意python解释器) workon name deactive
学2还是3我想这是每一个初学者都会遇到的难题,我觉得作为一名新手直接上3。Python3是未来的大势所趋,2.7现在只是在维护,不会增加新的功能。...接下来,我把2和3的主要区别整理一下分享给大家,有一部分参考了网上,我结合自己的理解和分析,希望可以帮到大家。...1.print这个可能是py2和py3最大的区别,很多人用惯py2的人很不习惯,为什么3一定要加上一个(),这是因为print从语句变为函数。...字符串也就是文本,这个问题一直在py2里面没有很好的处理。在py3里面彻底的解决了。Python3最重要的改动除了print,大概要算是对文本和二进制数据作了更为清晰的区分。...9.range和xrange ? 10.关于类 ? 11.生成器yield ? 12.其他 ? Py2和py3最大的区别在于print和字符串,其他的都是一些小的修改。
1、不等于比较运算符,python3不识别,pyhon2.7中!=和都能运行。2、print函数的使用,python3必须加括号,python2加不加都行。...如果在文件头指定了解码编码,py2和py3都会按指定解码,所有系统都支持Unicode,所以py3只要指定对了解码编码,在哪个系统上都可以正常显示,py2如果不是gbk编码的,解码后windous就会是乱码...(直接运算会显示long型,因为2**31会先运算,是long型)8、用户输入不同,py3中只有input()输出都是str和py2中的raw_input()一样,而py2中也有input(),输入字符串要带引号...,数字输出相应的数字类型9、Py2以前没有布尔型,0表示False,用1表示True;Python3 把 True 和 False 定义成关键字,它们的值还是 1 和 0,可以和数字运算。...10、py2中range()直接生成列表(量大占内存死机),py3中只有range()和py2中还有的xrang()都只生成一个生成器(一个计算方法,不占内存)。
Python2 中默认把脚步文件使用 ASCII 来处理(历史原因请 Google) Python2 中字符串除了 str 还有 Unicode,可以用 decode 和 encode 相互转换 Python3...中默认把脚步文件使用 UTF-8 来处理(终于默认就支持中文了,赞) Python3 中文本字符和二进制分别使用 str 和 bytes 进行区分,也是使用 decode 和 encode 进行相互转换...的解释器使用默认解释器字符编码 gbk 格式对读取内容进行 encode 输出,但是之前 utf-8 是 3 个字节长度表示一个中文,而 gbk 是用 2 个字节长度来表示中文,所以之前的 2 个中文...上面说的这个问题,如果文件存储和脚本文件编码都使用 utf-8 时,使用 Python3.4 是没有问题的,因为 Python3 默认的解释器字符编码是 utf-8 了,默认就可以处理中文了。...总结下结论: Python2 脚步文件尽量使用 gbk 格式存储;同理 Python3 脚步文件尽量使用 utf-8 格式存储; Python2 脚步如果带有中文字符时,请务必在脚本开头声明能支持中文的脚本文件编码
2)写python2的环境变量 高级系统设置,环境变量,选择Path,点击编辑,新建,分别添加D:\python2和D:\python2\Scripts到环境变量。 3....修改python编译器名 为了在DOS中便于区分python2和python3,我们将默认的python编译器名称进行修改。...在python2和python3的安装目录中: 修改D:\python2中python.exe和pythonw.exe的名称为python2.exe、pythonw2.exe; 修改D:\python3...中python.exe和pythonw.exe的名称为python3.exe、pythonw3.exe。...设置pip python 安装包需要用到包管理工具pip,但是当同时安装python2和python3的时候,pip只是其中一个版本,需重新分别安装两个版本的pip,使得两个python版本的pip能够共存
Python2中使用 ASCII 码作为默认编码方式导致string有两种类型str 和unicode,Python3只 支持unicode的string。...Python2和Python3字节和字符对应关系为: ? 2. Python3采用的是绝对路径的方式进行import。...Python3中这一点将被修改,如果还需要导入同一目录的文件必 须使用绝对路径,否则只能使用相关导入的方式来进行导入。 3. Python2中存在老式类和新式类的区别 Python3统一采用新式类。...Python3使用更加严格的缩进。 Python2的缩进机制中,1个tab 和8个space 是等价的,所以在缩进中可以同时允许tab和space 在代码中共存。...“//”: Python2:返回小于除法运算结果的最大整数;从类型上讲,与"/"运算符返回类型逻辑一致。 Python3:和Python2运算结果一样。 2.
很多人都比较关心python2.x和python3.x的区别,这件事聊起来就要从Python的历史说起来了,python是1989年开发出来了,到今天已经30多岁了。...现在我们新手学习的都是Python3,但是Python3和Python2不兼容,所以很多以前使用Python2开发的项目想改成Python3就比较费劲了。...这里我们来重点聊聊python2.x和python3.x的区别。...9.next()和.next()函数 Python2对两个函数均支持 Python3只支持next()函数。...这里面还有很多细节有所不同,这里没办法和大家一一讲解,但是要明白的一点就是,你学的是python3,暂时没有必要管的太多,当你学会python3之后,再去看python2一点压力都没有,等你工作后去修改公司老程序也不会有压力
Python2和Python3之间的差异 python2和python3默认编码方式不同 python2的默认编码方式是ASCII,而python3的默认编码方式是Unicode,因此我们在python2...---- input和raw_input 在python2中提供了raw_input和input两个函数,而在python3中的input函数是raw_input函数的重命名,在python3中没有了raw_input.../input_python2.py 请输入内容:1+2 3 预期的输出结果应该是1+2,而不是实际输出的3,这是因为input函数把输入当做python代码给执行了,然后将执行结果赋值给了data变量.../input_python2.py 请输入内容:1+2 1+2 python3的input 如前所述,python3的input就是python2的raw_input函数的重命名。...因此它的功能和python2的raw_input是一模一样。
为了照顾现有程式,Python 2.6作为一个过渡版本,基本使用了Python 2.x的语法和库,同时考虑了向Python 3.0的迁移,允许使用部分Python 3.0的语法与函数。...现在,在Python3,我们最终有了 Unicode (utf-8) 字符串,以及一个字节类:byte 和 bytearrays。...floor操作,在python 2.x和python 3.x中是一致的。...在2.x raise语句使用逗号将抛出对象类型和参数分开,3.x取消了这种奇葩的写法,直接调用构造函数抛出对象即可。...在Python3.x和Python2.x中也有了很大的差异。
下载python2.x和python3.x安装在同一目录下不同的文件夹 配置环境变量(我是安装在F盘下) 1.F:\Python27 2.F:\Python27\Scripts 3.F:\Python33...4.F:\Python33\Scripts 理论上Python2.7安装目录下就一个python.exe程序,如果有python2.exe或者python2.7.exe就吧python.exe删掉 进入...找到python.exe程序,把它重命名为python3.exe 剩下的问题就是pip的问题了。两个python版本分别安装了pip以后怎么区分它们。...进入python安装路径找到Scripts文件夹,进入里面找到pip*-script.py,打开修改第一句为你要指定的那个python解释器 修改第一行python.exe改为python3.exe #...F:\Python34\python3.exe 使用pip安装包,例如要安装xlrd这个包 python2使用:pip2 install xlrd python3使用:pip3 install xlrd
python下载地址: https://www.python.org/ftp/python/3.4.4/Python-3.4.4.tar.xz ?...下载命令: wget https://www.python.org/ftp/python/3.4.4/Python-3.4.4.tar.xz 解压: tar xvf Python-3.4.4.tar.xz...make make altinstall 如果出错: checking for --enable-universalsdk... no 需要安装下面命令: yum install gcc 如果出现pip3未安装的情况...应用程序目录:/usr/local/bin/python3.4 pip3的执行文件:/usr/local/bin/pip3.4 ?...切记添加环境变量: #set python3.4,pip3.4 export PYTHON_HOME=/usr/local/bin/ 让环境变量生效: source /etc/profile ?
python网页抓取功能非常强大,使用urllib或者urllib2可以很轻松的抓取网页内容。但是很多时候我们要注意,可能很多网站都设置了防采集功能,不是那么轻松就能抓取到想要的内容。...今天我来分享下载python2和python3中都是如何来模拟浏览器来跳过屏蔽进行抓取的。 最基础的抓取: #!....***.com" html = urllib.request.urlopen(url).read() print(html) 但是...有些网站不能抓取,进行了防采集设置,所以我们要变换一下方法 python2...) python3中(最新稳定版本python3.3) #!.../usr/bin/env python # -*- coding:utf-8 -*- # @Author pythonwc import urllib2 url="http://www.baidu.com
领取专属 10元无门槛券
手把手带您无忧上云