42讲课后习题
class Nstr:def __init__(self, arg=''):
if isinstance(arg, str):
self.total = 0
for each in arg:
self.total += ord(each)
else:
print("参数错误!")
def __add__(self, other):
return self.total + other.total
def __sub__(self, other):
return self.total - other.total
def __mul__(self, other):
return self.total * other.total
def __truediv__(self, other):
return self.total / other.total
def __floordiv__(self, other):
return self.total // other.total
class Nstr:
def __init__(self, arg=''):
if isinstance(arg, str):
self.total = 0
for each in arg:
self.total += ord(each)
请问这个arg = '' 是什么意思?
请问这个arg = '' 是什么意思?
这就像 print() 的默认参数 end = '\n' 一样,你这里定义函数 arg 默认等于 空字符串
所以调用时候可以不用传参数,因为有默认值,如果你没有设置默认值那么直接调用会报错,必须传入赋值给 arg Twilight6 发表于 2020-6-16 16:43
这就像 print() 的默认参数 end = '\n' 一样,你这里定义函数 arg 默认等于 空字符串
所以调用 ...
def __init__(self, arg),这样可以吗 好像运行起来也是可以的 lichanglin1987 发表于 2020-6-16 17:15
def __init__(self, arg),这样可以吗 好像运行起来也是可以的
是的但是你不传入参数就会报错 比如这样调用:
t = Nstr()
因为没有设置默认值 Twilight6 发表于 2020-6-16 17:19
是的但是你不传入参数就会报错 比如这样调用:
懂了。谢谢 lichanglin1987 发表于 2020-6-16 17:25
懂了。谢谢
客气了 ~ 加油吧!
页:
[1]