该篇博客主要记录在使用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'
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 另外,字典对象的
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的安装
使用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 字符编码,这节省了开发者的时间,同时也可以轻松地在程序中输入和显示更多种类的字符。
需求目的:把一个 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
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和字符串,其他的都是一些小的修改。
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能够共存
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 码作为默认编码方式导致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一点压力都没有,等你工作后去修改公司老程序也不会有压力
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
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有两个主要的版本,python2 和 python3 ,但是python又不同于其他语言,向下兼容,python3是不向下兼容的,但是绝大多数组件和扩展都是基于python2...的,下面就来总结一下python2和python3的区别。...= 2)去除``,全部改用repr() 3)关键词加入as 和with,还有True,False,None 4)整型除法返回浮点数,要得到整型结果,请使用// 5)加入nonlocal语句。...7.异常 1)所以异常都从 BaseException继承,并删除了StardardError 2)去除了异常类的序列行为和.message属性 3)用 raise Exception(args)...《python3》:www.pzzs168.com 《cellections模块》:www.aiidol.com
---- Python 语言的优势不言而喻。今天要说的就是 Py2 官方已经发出停止维护截止时间了,因此还没有开始或者即将开始的伙伴,可以直接看 Py3 的相关学习材料。...左边公众号回复「python」即可获得一份自学材料。 2 和 3 到底有什么区别? 不过大部分语法是没有什么差别的。下面就简单来看看有哪一些常用以及主要的变化。 ---- ?...---- Xrang 「 Xrang」这个可以说在 Python2 里面是一个神器,但是 Python3 里面没有了,已经取消了,如果还是像前者那么去使用的话,一样标红。...---- 除法「/」 还有一个常用的除法「/」,在 Python2 和其他的编程语言差不过,都是整除的意思。但是 python3 的用法就有变化了,和实际的除法类似,结果直接转化为浮点数。...---- 其他 其他的暂时没有考虑到,常用也就这么几个,可以自己去发掘和验证。最后在提一下,公众号留了 Python3的自学材料,感兴趣的话,可以公众号回复「python」即可获得一份材料。
给出明确回复 python2在2020将光荣退役 可以怀念,但请拥抱python3吧 python2和python3的差异 这里小说(粗浅,小范围)下当前我个人碰到的和觉得常用的一些东西 在python2...和python3中的差异 print python2 是个 语句 python3 是个 函数 这样的话一些链式操作或是语句构建就成为可能 Unicode编码 python2中中国程序员困扰的编码问题,...err_inform: 4 print('error') 异常对象 map python2 返回的是 list python3 返回的是 iterator range和xrange python2...python2 VS python3 当前这种情况下,视乎不存在争端和纠结了 对于还未接触过python的同学,建议不要理会python2了,直接拥抱python3 对于有经验的python2的同学,...不是非python2不可,也建议拥抱python3吧 python官方也给出了很多使用python3的原因和从python2过度到python3有效的建议 具体请看如下链接 http://python3statement.org
领取专属 10元无门槛券
手把手带您无忧上云