python 类 报错
以下三段代码 ,只有一段报错。class A(str):
def __new__(ls,string):
string = string.upper()
return str.__new__(ls,string)
a = A('l love FishC.com!')
print(a)
class A(str):
def __new__(sss,string):
string = string.upper()
return str.__new__(sss,string)
a = A('l love FishC.com!')
print(a)
class A(str):
def __new__(ls,string):
string = string.upper()
return str.__new__(cls,string)
a = A('l love FishC.com!')
print(a)
最后一段代码,报错如下NameError: name 'cls' is not defined 本帖最后由 青出于蓝 于 2022-7-13 18:10 编辑
第4行,哪来的cls
class A(str):
def __new__(ls,string):
string = string.upper()
return str.__new__(ls,string)
a = A('l love FishC.com!')
print(a)
class A(str):
def __new__(ls,string): #这里你在定义时形参的名字为 "ls",所以后面需使用 "ls" 作为变量名,并不存在 "ls" 这个变量!
string = string.upper()
return str.__new__(cls,string) #应该为 "ls"
a = A('l love FishC.com!')
print(a)
python爱好者. 发表于 2022-7-13 18:14
这在小甲鱼那一颗讲的,我回去复习一下。 python爱好者. 发表于 2022-7-13 18:14
还有是不是每一个类的形参是不一样的 shiyouroc 发表于 2022-7-13 18:59
还有是不是每一个类的形参是不一样的
这里的形参是指你在定义类中的方法,也就是函数时,在括号里填的参数,如:
def __new__(ls,string):
这里的 ls,string 就是形参,具体的你可以翻小甲鱼前面的关于函数的课堂笔记
页:
[1]