python2中的print语句可以不用小括号。_Python 2与Python 3的区别
越来越多的库要放弃Python 2了,强哥也开始转向Python 3了。最近的项目开始用Python3写了,也体会了一下2和3的区别。主要的一些区别在以下几个方面:
- print函数
- 整数相除
- Unicode
- 异常处理
- xrange
- map函数
- 不支持has_key
print函数
Python 2中print是语句(statement),Python 3中print则变成了函数。在Python 3中调用print需要加上括号,不加括号会报SyntaxError
Python 2
print
输出
hello world
Python 3
print
输出
hello world
print
输出
File "<stdin>", line 1print "hello world"^
SyntaxError: Missing parentheses in call to 'print'
整数相除
在Python 2中,3/2的结果是整数,在Python 3中,结果则是浮点数
Python 2
print
输出
3 / 2 = 1
3 / 2.0 = 1.5
Python 3
print
输出
3 / 2 = 1.5
3 / 2.0 = 1.5
Unicode
Python 2有两种字符串类型:str和unicode,Python 3中的字符串默认就是Unicode,Python 3中的str相当于Python 2中的unicode。
在Python 2中,如果代码中包含非英文字符,需要在代码文件的最开始声明编码,如下
# -*- coding: utf-8 -*-
在Python 3中,默认的字符串就是Unicode,就省去了这个麻烦,下面的代码在Python 3可以正常地运行
a
异常处理
Python 2中捕获异常一般用下面的语法
try
或者
try
Python 3中不再支持前一种语法,必须使用as关键字。
xrange
Python 2中有 range 和 xrange 两个方法。其区别在于,range返回一个list,在被调用的时候即返回整个序列;xrange返回一个iterator,在每次循环中生成序列的下一个数字。Python 3中不再支持 xrange 方法,Python 3中的 range 方法就相当于 Python 2中的 xrange 方法。
map函数
在Python 2中,map函数返回list,而在Python 3中,map函数返回iterator。
Python 2
map
输出
[1, 2, 3, 4, 5]
Python 3
map
输出
<map object at 0x7ff5b103d2b0>
list
输出
[1, 2, 3, 4, 5]
filter函数在Python 2和Python 3中也是同样的区别。
不支持has_key
Python 3中的字典不再支持has_key方法
Python 2
person
输出
person has key "age": True
person has key "age": True
Python 3
person
输出
person has key "age": True
print
输出
Traceback (most recent call last):File "<stdin>", line 1, in <module>
AttributeError: 'dict' object has no attribute 'has_key'
以上是最近整理的一些,后续会继续更新,也欢迎大家补充。
python2中的print语句可以不用小括号。_Python 2与Python 3的区别相关推荐
- python2中的print语句可以不用小括号。_Python 2.7终结于7个月后,这是你需要了解的3.X炫酷新特性...
从 3.0 到 3.8,Python 3 已经更新了一波又一波,但似乎我们用起来和 2.7 没有太大区别?以前该怎么写 2.7 的代码现在就怎么写,只不过少数表达方式变了而已.在这篇文章中,作者介绍了 ...
- python2中可以使用print()函数吗_在Python2.x中使用print()(函数版本)
我理解语句和表达式之间的区别,我理解Python3将print()转换为函数. 但是我在各种Python2.x解释器上运行了一个用括号括起来的print()语句,它运行完美,我甚至不需要导入任何模块. ...
- python2中可以使用print()函数吗_Python3中的 print 函数有哪些用法?
自从python3更新以后,大家对函数的热情再一次高涨起来,好多小伙伴问小编,3之后函数的使用有没有什么改变?今天小编就这个问题,跟大家说一说,感兴趣的小伙伴可以来看下了哦~ 关于print函数的用法 ...
- Linux之shell中的大括号、中括号、小括号的使用详解+多示例
摘要:很多人和我一样对于shell的各种括号的各种用法肯定不是很清楚,有时候看见别人脚本都不知道是什么意思,今天就来说说bash中的大中小括号的用法和解释,本人常用bash所以也只能用bash来说明了 ...
- python中的import语句的作用是什么_什么是Python import语句?在Python中的import语句作用有哪些?...
Python import语句是用来导入模块的,在python模块库中有着大量的模块可供使用,import语句作用是把文件需要用的指定模块导入到当前程序中. import语句的作用 import语句作 ...
- java和C#中 定义变量,加一个小括号是什么意思。。。
在群里灌水发现,有人这样定义字符串,感觉很好奇..又问了群友,群友说这样定义没问题.. String strtemp = ("test"); 我自己试了下,java和C#都可以,C ...
- python 小括号 运算_浅析python 中大括号中括号小括号的区分
python语言最常见的括号有三种,分别是:小括号( ).中括号[ ]和大括号也叫做花括号{ }.其作用也各不相同,分别用来代表不同的python基本内置数据类型. 1.python中的小括号( ): ...
- python中的for语句可以在任意序列_python在循环内任意增加迭代器
python在循环内任意增加迭代器 我可能会以错误的方式处理此问题,但我想知道如何在python中处理此问题. 首先一些C代码: int i; for(i=0;i<100;i++){ if(i ...
- python中csv模块是自带的吗_python csv模块 Python的CSV模块,怎么新建为添加模式
在python 3.5.2中csv模块怎么 安装 首先打开cmd,Ctrl + R快捷键.输入cmd,点击回车.在cmd命令窗口输入python,检查环境是否配置好.退出环境exit().输入 pip ...
最新文章
- 自定义Push和Pop过渡动画
- matlab svm工具箱_机器学习笔记--SVM(MATLAB 实现代码)
- python字符编码是什么_python3字符编码是什么?怎么用?
- Forbidden Attack:7万台web服务器陷入被攻击的险境
- 用python画猫咪怎么画-Python海龟画图工具绘制叮当猫程序
- spring mvc框架设计与实现
- [Android] 开发第六天
- C与指针、C陷阱与缺陷
- jzoj3348,bzoj3258-秘密任务【最短路,网络流最小割】
- 无服务器冷启动不是问题-这就是为什么(对于大多数应用程序)
- 2021年的高考大约多久可以查询成绩,2021高考完什么时候可以查分数 查成绩的时间...
- 计算机控制系统笔记,计算机控制系统复习笔记.doc
- 3月第3周安全回顾 大规模网页攻击 百万张信用卡数据丢失
- linux cp覆盖每次都有提示
- win10 更新 英特尔显示器音频 后显示器音箱没有声音
- QQ群排名技术讲解、实战分析、核心要点 盗引结合篇
- Python 爬虫问卷星填写
- JavaScript下的setTimeout(fn,0)意味着什么?
- 多模态Prompt Tuning,你到底行不行?
- EventBus使用详解的