学python2.7简单还是python3.0简单,谈谈两者区别

1. 使用__future__模块

Python 3.X 引入了一些与Python 2 不兼容的关键字和特性。在Python 2中,可以通过内置的__future__模块导入这些新内容。如果你希望在Python 2中写的代码也可以在Python 3.X中运行,那么建议使用__fufure__模块。

2. print 函数

虽然print语法是Python 3中一个很小的改动,但是依然值得提一下:Python 2中的print 语句被Python 3中的 print()函数取代,这意味着在Python 3中必须用括号将需要输出的对象括起来。在Python 2中使用额外的括号也可以,但是如果要在Python 3中以Python 2 的形式不带括号调用 print 函数,就会触发SyntaxError(语法错误)。

3. 整数除法

由于人们常常会忽视Python 3 在整,数除法上的改动(写错了也不会触发SyntaxError),因此在移植代码或在Python 2 中执行Python 3 的代码时需4要特别注意这个改动。

4. Unicode

Python 2 有基于ASCII 的 str()类型,可通过单独的 unicode()的函数转成 unicode类型,但没有byte 类型。在Python 3 中有了Unicode(UTF-8)

字符串和两个字节类(bytes和bytearrays)。

5. xrange

在Python 2.x中,经常会用xrang()创建一个可迭代对象,通常出现在“for”循环或“列表/集合/字典推导式”中。(在Python 3 中使用 xrang()会触。NameError)。

6. 触发异常

Python 2 支持新旧两种异常触发语法,而Python 3 只支持带括号的语法(不然会触发SyntaxError)。

7. 处理异常

Python 3中的异常处理发生了一点变化。在Python 3中必须使用as 关键字,Python 2 中不需要。

8. next()函数和.net()方法

由于会经常用到next() (.next())函数(方法),因此要提到另一个语法改动(实现方面也做了改动):在Python 2中,函数形式和方法形式都可以使用;在Python 3中 ,只能使用next()函数(试图调用.next()方法会触发AttributeError) 。

9. for循环变量与全局命名空间泄露

在Python 3中,for循环中的变量不再会泄露到全局命名空间中了。

10. 比较无序类型

Python 3 中另一个优秀的改动是,如果我们试图比较无序类型,就会触发一个TypeError。

11. 使用 input()解析输入内容

Python 3 改进了input()函数,这样该函数就会总是将用户的输入存储为 str对象。在Python 2 中,为了避免读取非字符串类型会发生的一些危险行为,不得不使用 raw_input()代替input()。

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

某些函数和方法在Python 3 中返回的是可迭代对象,而不像在Python 2 中返回列表。对象只遍历一次会节省很多内存,如果通过生成器多次迭代这些对象,效率就不高了。此时如果需要列表对象,可以通过Python 3的list()函数简单地将可迭代对象转成列表。

转载(http://www.96net.com.cn/)

学python2.7简单还是python3.0简单,两者区别的更多相关文章

  1. Python与C的简单比较(Python3.0)

    Python可以说是目前最火的语言之一了,人工智能的兴起让Python一夜之间变得家喻户晓,Python号称目前最最简单易学的语言,现在有不少高校开始将Python作为大一新生的入门语言.本萌新也刚开 ...

  2. python2.x版本与python3.x版本的区别以及运算符

    python2.x中: 重复代码,语言不统一,不支持中文 py2中除法获取的都是整形 py2中有long(长整形) print 可以加括号也可以不加括号 range 在py2中打印的结果是列表 py2 ...

  3. 相比于python2.6,python3.0的新特性。

    这篇文章主要介绍了相比于python2.6,python3.0的新特性.更详细的介绍请参见python3.0的文档. Common Stumbling Blocks 本段简单的列出容易使人出错的变动. ...

  4. 零元学Expression Blend 4 - Chapter 47 超简单!运用StackPanel配合OpacityMask做出倒影效果

    原文:零元学Expression Blend 4 - Chapter 47 超简单!运用StackPanel配合OpacityMask做出倒影效果 有网友问我如何在Blend内制作出倒影效果 我提供了 ...

  5. Atitit python3.0 3.3 3.5 3.6 新特性 Python2.7新特性1Python 3_x 新特性1python3.4新特性1python3.5新特性1值得关注的新特性1Pyth

    Atitit python3.0 3.3 3.5 3.6 新特性 Python2.7新特性1 Python 3_x 新特性1 python3.4新特性1 python3.5新特性1 值得关注的新特性1 ...

  6. struts2.0简单教程

    Struts2.0简单配置教程: 在Eclipse中配置Struts2 步骤一:首先打开java ee并建立一个动态网站项目,我建立的项目名为TestDemo,如下图: 建立之后可在左侧发现工程,展开 ...

  7. HTTP/2.0 简单总结(转载)

    HTTP/2.0 简单总结(转载于https://linjunzhu.github.io/blog/2016/03/10/http2-zongjie/) 如何使用上 HTTP/2.0 需要浏览器的支持 ...

  8. moloch1.8.0简单操作手册

    moloch1.8.0简单操作手册 Sessions 页面:Sessions主要通过非常简单的查询语言来构建表达式追溯数据流量,以便分析. SPIView 页面: SPIGraph页面:SPIGrap ...

  9. Spark学习笔记0——简单了解和技术架构

    目录 Spark学习笔记0--简单了解和技术架构 什么是Spark 技术架构和软件栈 Spark Core Spark SQL Spark Streaming MLlib GraphX 集群管理器 受 ...

随机推荐

  1. C# 获取一个文件的MD5值

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Tex ...

  2. python基础--6 集合

    #1.不同元素组成#2.无序#3.集合中的元素必须为不可变类型 a={1,2,3,4,5,(1,2,3)}print(a) #随机向集合添加元素a.add("sjsj")print ...

  3. QTextStream写文件中文乱码解决办法

    1.首先把Qt Creator的编辑器设置为使用 UTF-8:   工具-->选项-->文本编辑器-->行为,在右侧选项界面找到文件编码选项,设置为 UTF-8.2.使用 QText ...

  4. wangeditor 支持上传视频版

    1.关于使用哪个富文本编辑器. 简单的要求,不要求发布出来的文章排版要求很高.  可用wangediter.(简单,体积小,不可修改上传图片的尺寸大小) 转载 来源: https://blog.csd ...

  5. 配置Android Studio

    1.去gradle官网下载gradle,gradle的版本可以在C:\Program Files\Android\Android Studio\gradle下看到 2.新建一个项目,退出后把下载好的g ...

  6. 吐血整理 | 1000行MySQL学习笔记,不怕你不会,就怕你不学!

    / Windows服务 / / 连接与断开服务器 / / 数据库操作 / ------------------ / 表的操作 / ------------------ / 数据操作 / ------- ...

  7. spring boot 开静态资源访问,配置视图解析器

    配置视图解析器spring.mvc.view.prefix=/pages/spring.mvc.view.suffiix= spring boot 开静态资源访问application.proerti ...

  8. .Net Core 学习目录(搁置)

    简介 .NET Core 是.NET Framework的新一代版本,是微软开发的第一个官方版本,具有跨平台 (Windows.Mac OSX.Linux) 能力的应用程序开发框架 (Applicat ...

  9. Python3解leetcode Average of Levels in Binary Tree

    问题描述: Given a non-empty binary tree, return the average value of the nodes on each level in the form ...

  10. 【2019 Multi-University Training Contest 10】

    01: 02: 03:https://www.cnblogs.com/myx12345/p/11671692.html 04: 05:https://www.cnblogs.com/myx12345/ ...