super在python3和python2_python2与Python3的区别

 2023-09-07 阅读 29 评论 0

摘要:python2与Python3之间的主要区别printpy2:print语句,语句就意味着可以直接跟要打印的东西,如果后面接的是一个元组对象,直接打印py3:print函数,函数就以为这必须要加上括号才能调用,如果接元组对象,可以接收多个位置

python2与Python3之间的主要区别

print

py2:print语句,语句就意味着可以直接跟要打印的东西,如果后面接的是一个元组对象,直接打印

py3:print函数,函数就以为这必须要加上括号才能调用,如果接元组对象,可以接收多个位置参数,并可以打印

# py2>>> print("hello", "world")

pythonsuper函数,('hello', 'world')

# py3>>> print("hello", "world")

hello world

Python2中输入print后面可以不加()可以加()

Python3中输入print后面必须加()

换行

python多重继承super。py2中不需要换行输出时,输入后面添加“,”逗号

py3中不需要换行输出时,输入后面添加“end=”””

# py2>>>print “hello world!”,;print “hi”

hello world!hi>>>print “hello world!”;print “hi”

hello world

hi

python中super的作用。#py3>>>print(“hello world!”,end=””)

hello world!>>>

>>>print (“hello world!”)

hello world!

输入函数

py2:input_raw()

python中super,py3:input()

在使用super()的不同

py2:必须显示的在参数中写上基类

py3:直接无参数调用即可

1/2的结果

py2:返回0

python3super用法。py3:返回0.5,没有了int和long的区别

编码

py2:默认编码ascii

py3:默认编码utf-8

而且为了在py2中使用中文,在头部引入coding声明,不推荐使用

字符串

python的super。py2:unicode类型表示字符串序列,str类型表示字节序列

py3::str类型表示字符串序列,byte类型表示字节序列

True和False

py2:True 和 False 在 Python2 中是两个全局变量,可以为其赋值或者进行别的操作,初始数值分别为1和0,虽然修改是违背了python设计的原则,但是确实可以更改

py3:修正了这个变量,让True或False不可变

迭代器

python继承super,py2:当中许多返回列表的方法,如range,字典对象的 dict.keys()、dict.values() 方法, map、filter、zip;并且迭代器必须实现next方法

py3:将返回列表的方法改为了返回迭代器对象,内置了__next__,不用特意去实现next

nonlocal

py2:没有办法在嵌套函数中将变量声明为一个非局部变量,只能在函数中声明全局变量

py3:nonlocal方法实现了,示例如下:

def func():

python super()?c= 1def foo():

c= 12foo()

print(c)

func() #1def func():

c= 1def foo():

nonlocal c

python raise。c= 12foo()

print(c)

func() #12

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/16201.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息