python从零开始 -- 第2篇之python版本差异

    第0篇开始,咱们就说选择 python 3.x,一般来说,咱们面临选择的时候总是想了解更多一点,并且版本之间的对比能引申出很多有意思的故事和知识点,对于加深认识也是很有帮助。

让我们先从python发展史开始吧

这份官方文档着python详细的版本列表,这是中文版介绍,一长串的内容都是python生命力的体现,python在TIOBE排行榜上也是排名靠前,现已超越 c++ 成为探花,仅次于 Java 和 C,看到这里是不是感叹python惊人的发展势头呢?

​ python迭代更新迅速,加上python3.x 不兼容 python 2.x 的原因,所以可能还会接触或者需要用到python2.x,对比两者,需要注意到的问题有,(初期会遇到的问题下方有说明,其他更详细的请参考这里):

  1. __future__模块

    通过导入

    from __future__ import division

    可让你的python2.x 代码支持 python 3.x

  2. print函数

    python2.x 的print 声明 在 python3.x 中被print函数取代,也是需要使用 print()

  3. 整除

    python2.x 3/2 = 1 python3.x 3//2 = 1 3/2 = 1.5

  4. Unicode

  5. xrange模块

  6. Python3中的range对象的__contains__方法

  7. Raising exceptions

  8. Handling exceptions

  9. next()函数 and .next()方法

  10. For循环变量和全局命名空间泄漏

  11. 比较不可排序类型

  12. 通过input()解析用户的输入

    python 3.x中的input()函数存储的是字符串,python 2.x中存在input(), raw_input(),存在读取非字符串的危险行为。

  13. 返回可迭代对象,而不是列表

    目前就先列出这么些吧,看的有点累了么?来玩玩这个彩蛋

python从零开始 -- 第2篇之python版本差异的更多相关文章

  1. python从零开始 -- 第1篇之环境搭建

    事实上,网络上有很多相应的教程,本文无意做成文章的粘贴展示板,附上我认为的简易的安装详解: 安装 Python 环境(编程小白的第一本 Python 入门书),包含了python以及相关的IDE,图文 ...

  2. Python学习【第一篇】Python简介

    Python简介 Python前世今生 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. 现在,全世界差不多有600多种编 ...

  3. python学习【第一篇】python介绍

    python发展历史 起源 Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.然而,尽管他算得上是一位数学家,但他更加享受 ...

  4. python 学习之 基础篇一 python及pycharm的安装

    一. Python 环境搭建(安装请参照https://www.runoob.com/python/python-install.html) Python下载 Python官网:https://www ...

  5. Python之路(第一篇):Python简介和基础

    一.开发简介 1.开发:      开发语言:               高级语言:python.JAVA.PHP.C#..ruby.Go-->字节码                低级语言: ...

  6. python从零开始 -- 第0篇之Hello World!

    为什么选择python以及版本选择 学习资料 学习方法和路径 1. 为什么选择python以及版本选择: Python  好玩,强大,更多关于关于为什么选择Python,在  编程小白的第一本 Pyt ...

  7. Python开发【第一篇】Python基础之自定义模块和内置模块

    为什么要有模块,将代码归类.模块,用一砣代码实现了某个功能的代码集合. Python中叫模块,其他语言叫类库. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代 ...

  8. 【python自动化第五篇:python入门进阶】

    今天内容: 模块的定义 导入方法 import的本质 导入优化 模块分类 模块介绍 一.模块定义: 用来在逻辑上组织python代码(变量,函数,逻辑,类):本质就是为了实现一个功能(就是以.py结尾 ...

  9. 【Python 开发】第二篇 :Python安装

    一.python3.x安装 1)由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到. 官网:https://www.python.o ...

随机推荐

  1. [LeetCode] 80. Remove Duplicates from Sorted Array II ☆☆☆(从有序数组中删除重复项之二)

    https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/discuss/27976/3-6-easy-lines-C% ...

  2. C# MethodInvoker委托的使用

    一.MethodInvoker是什么? MethodInvoker 表示一个委托,该委托可以执行托管代码中声明为void且不接受任何参数的任何方法.在对控件的 invoke 方法进行调用时或需要一个简 ...

  3. Delphi下的WinSock编程

    一.定址        要通过Winsock建立通信,必须了解如何利用指定的协议为工作站定址.Winsock 2引入了几个新的.与协议无关的函数,它们可和任何一个地址家族一起使用:但是大多数情况下,各 ...

  4. php封装curl,模拟POST和GET请求HTTPS请求

    <?php /** * @title 封装代理请求 * @author victor **/ class ApiRequest { /** * curl提交数据 * @param String ...

  5. 字符串的顺序倒置。(Reverse)

    实际遇到的问题:在串口获取码表数据的时候,有的码表传到电脑上的数字顺序是颠倒的,即:123.45,会显示为54.321.需要重新处理数据.方法很多,也不难实现,现在列举其中5个. public str ...

  6. 如何启动linux的telnet服务--转载

    如何启动linux的telnet服务 如何启动linux的telnet服务 步骤如下: 1.如果安装了telnet.telnet-server的rpm包,就跳到2.,否则安装这个包. 2.修改teln ...

  7. mui框架上下拉加载

    mui框架被定位为“最接近原生体验的移动App的UI框架”. 写下mui框架中常用的两个功能,下拉刷新和上拉加载,没有后台交互,用js写假数据模拟,下面直接上代码. <!DOCTYPE html ...

  8. [工控安全]“祝融”—一种针对PLC控制系统的欺骗攻击病毒

    “祝融”作为一种针对传统PLC控制系统的欺骗攻击病毒,所述的典型的PLC控制系统通常包括两部分: 用于组态.编程.监视.控制的工程师站(通常是PC设备) PLC控制器(通常如西门子.施耐德.三菱等厂家 ...

  9. Linux 环境下umount, 报 device is busy 的问题分析与解决方法

    在Linux环境中,有时候需要挂载外部目录或硬盘等,但当想umount时,却提示类似“umount:/home/oracle-server/backup:device is busy”这种提示. 出现 ...

  10. xss处理

    今天学习了xss,主要记载如下: https://blog.csdn.net/sdauzyh/article/details/74942737