现在还有些开源模块还没有更新到python3 ,不了解版本区别,无法对不合适的地方进行更改。

由于只追求向Python3靠近,所以对于python2的特别用法不探究。

此文不补全所有版本区别,仅作档案记录我遇到的版本区别.


print函数:

在 Python 2 中, print 被视为一个语句而不是一个函数

更改:

Python 2中的print语句==>Python 3中的print()函数

 


input():

python2的raw_input()更新为Python 3 中的input()


整数除法:

更新:

由py2中的舍去小数的除法==》py3中的计算比较精确的除法

如果py3中想要不保留小数,使用  // 运算符

但要注意小数中//运算符的使用,//是返回比实际的商要小的数。


Unicode编码:

  • 1.Python 2中的字符串基于ASCII
  • 2.Python 3 默认使用 Unicode,Python3中的字符串类型默认是unicode类型的,另外新增了两个字节类:bytes和bytearrays
  • Byte的使用:
    • str对象转换成bytes对象可以使用encode()
    • bytes对象转换成str对象使用decode()
    • Python中对bytes类型的数据带 b前缀的单引号或双引号表示:

  • 由于编码变化还导致了python中网络编程函数使用的变化,网络传输都是字节流的,Python2的网络传输默认是字节型的,而python3中字符串是Unicode的,所以python3要对数据进行编码再传输。

不等运算符

Python 2.x中不等于有两种写法 != 和 <>

Python 3.x中去掉了<>, 只有!=一种写法

现在仍有一些教程保留着<>的用法!


处理异常:

捕获异常的语法由 except exception, variable 改为 except exception as variable

 

python3中将一些异常细化了,新增了不少异常


抛出异常:

更新:

py3使用构造函数抛出异常

raise 异常名, "自定义的异常信息"
raise 异常名("自定义的异常信息")

 


生成器的迭代:

python2中支持   生成器.next()

更新为

python3中的next(生成器),生成器.__next__()

 

 


(个人记录)Python2 与Python3的版本区别的更多相关文章

  1. 【转】Windows下安装python2和python3双版本

    [转]Windows下安装python2和python3双版本 现在大家常用的桌面操作系统有:Windows.Mac OS.ubuntu,其中Mac OS 和 ubuntu上都会自带python.这里 ...

  2. 字符编码 + python2和python3的编码区别(day08整理)

    目录 昨日回顾 二十三.元组内置方法 二十四.散列表 二十五.字典内置方法 二十六.集合内置方法 二十七.深浅拷贝 拷贝 浅拷贝 深拷贝 今日内容 二十八.字符编码 1.文本编辑器存储信息的过程 2. ...

  3. python版本坑:md5例子(python2与python3中md5区别)

    对于一些字符,python2和python3的md5加密出来是不一样的. Python2 和Python3MD5加密 # python2.7 pwd = "xxx" + chr(1 ...

  4. Mac上python2和python3的版本切换

    在命令行执行 vi ~/.bash_profile 在文件下面加上: alias python2='/system/Library/Frameworks/Python.framework/Versio ...

  5. Windows10系统下安装python2和python3双版本

    Windows10系统下安装Python3的步骤已经演示过(详见:https://www.cnblogs.com/schut/p/8399195.html),此处不再赘述Python的下载,主要介绍在 ...

  6. Python2和Python3之间的区别

    编码区别 Python3.X版本中源码文件默认使用的是utf-8编码 Unicode 字符串 Python 2有两种字符串类型:Unicode字符串和非Unicode字符串 Python 3只有一种类 ...

  7. 字符编码、python2和python3编码的区别

    目录 字符编码 文本编辑器存储信息的过程 python解释器解释python代码的流程 python解释器与文本编辑器的异同 不同编码格式存入与读取数据的过程 乱码的分析 python2和python ...

  8. Windows下安装python2和python3双版本

    现在大家常用的桌面操作系统有:Windows.Mac OS.ubuntu,其中Mac OS 和 ubuntu上都会自带python.这里我们只介绍下Windows(我用的Win10)环境下的pytho ...

  9. python第七十课——python2与python3的一些区别

    1.性能:py3.x起始比py2.x效率低,但是py3.x有极大的优化空间,效率正在追赶 2.编码:py3.x原码文件默认使用utf-8编码,使得变量名更为广阔 中国='CHI' print(中国) ...

随机推荐

  1. 平衡二叉树-AVL树(LL、RR、LR、RL旋转)

    平衡二叉树的定义: 任意的左右子树高度差的绝对值不超过1,将这样的二叉树称为平衡二叉树,二叉平衡树前提是一个二叉排序树. 平衡二叉树的插入: 二叉平衡树在插入或删除一个结点时,先检查该操作是否导致了树 ...

  2. Android使用bindService作为中间人对象开启服务

    Android使用bindService作为中间人对象开启服务 项目结构如下: MyService: package com.demo.secondservice; import android.ap ...

  3. Android四大组件之---activity生命周期详解

    废话不多说, 先来一张Google提供的一张经典的生命周期流程图: 有的朋友可能看英文的有点费劲,再提供一张中文版的  O(∩_∩)O 相信已经很多人对这张图再熟悉不过了,下面笔者按照自己的理解并结合 ...

  4. 一对一Socket简单聊天的实现

    今天终于调试通了Socket一对一的聊天,每次发送连接请求后,将用户名发送到Socket中去,然后将用户名和新建的socket存到map中,然后根据用户名来确定接收方是谁,以实现一对一的聊天功能. 上 ...

  5. [Python 从入门到放弃] 5. 文件与异常(一)

    1.文件操作: 文件操作包含读/写 从文件中读取数据 向文件写入数据 Python中内置了open()方法用于文件操作 (更多关于open()BIF介绍 阅读此篇) 基本模板: 1.获取文件对象 2. ...

  6. Entity Framework 6.x - Code First 默认创建数据库的位置

    在集成DbContext的派生类中的构造函数里,如果没有指定配置文件中的数据库连接字符串的name,默认就是: Data Source=(localdb)\MSSQLLocalDB;Initial C ...

  7. Oracle Comment 获取并修改表或字段注释

    select * from dba_tables where owner = 'DINGYINGSI'; select * from user_col_comments where table_nam ...

  8. Centos下安装最新版Mono并为windwos服务配置开机启动项

    一:安装Mono,此步骤参照官网 1:配置Yum仓库 #Centos 7yum install yum-utils rpm --import "http://keyserver.ubuntu ...

  9. ZOJ 3960 What Kind of Friends Are You?(读题+思维)

    题目链接 :http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5592 Japari Park is a large zoo hom ...

  10. Vue Router的懒加载路径

    单页应用产出的入口chunk大小随着业务的复杂度线性增加,导致后期加载速度越来越慢.后面就需要对不同路径下的模块进行拆分,打包到相应的chunk下,按需加载,找到chunk的大小.个数和页面加载速度的 ...