python实例化类后,调用类中的方法,为什么还要传一次devices

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

img

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

我想实例化类的时候,传入devices的值,在调用方法的时候就不用传这个值,应该怎么做

按你的代码可以这样改:

class a():
    def __init__(self,devices=None):
        self.devices = devices
    
    def connect(self):
        if self.devices:
            print('连接安卓设备')
        else:
            print('连接ios设备')

a = a(devices='android')
a.connect()

不过你这个逻辑是在初始化实例的时候,只要devices不为None,后面调用connect()方法打印出来都是“安卓设备”