1.我的环境是python3.11
2. 给子类传参会报错
class Headers:
def __init__(self):
self.headers = headers
class Index_Data(Headers):
def __int__(self, key_word, page):
self.page = int(page)
self.key_word = str(key_word)
if __name__ == '__main__':
t1 = Index_Data('sss', 1)
print(t1.page)
执行程序,报错了
你代码写错了
在 Index_Data 类的构造函数中,参数列表中应该包含 self,因此需要将 int 改为 __init__。
正确代码如下:
class Headers:
def __init__(self):
self.headers = headers
class Index_Data(Headers):
def __init__(self, key_word, page):
self.page = int(page)
self.key_word = str(key_word)
if __name__ == '__main__':
t1 = Index_Data('sss', 1)
print(t1.page)
问题 1:在函数内部,针对参数使用 赋值语句,会不会影响调用函数时传递的 实参变量? —— 不会!
问题 2:如果传递的参数是 可变类型,在函数内部,使用 方法 修改了数据的内容,同样会影响到外部的数据