鱼C论坛

 找回密码
 立即注册
查看: 2542|回复: 8

[已解决]类里面的函数调用问题求助

[复制链接]
发表于 2023-2-13 16:22:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
class Task:
    image_window_list = []
    def setId(self,Id):
        self.Id = Id

    def setNoDownlink(self,NoDownlink):
        self.setNoDownlink = NoDownlink

    def setTaskRequest(self,task_request):
        self.setTaskRequest = task_request

    def setTaskProperty(self,task_property):
        self.setTaskProperty = task_property

    def setTarget(self,task_target):
        self.setTarget = task_target

    def getImageWindowList(self,window):
        self.getImageWindowList = Task.image_window_list.append(window)
   
a = Task()
window1 = 1
window2 = 2
print(type(window1))
print(type(window2))
a.getImageWindowList(window1)
a.getImageWindowList(window2)
print(a.image_window_list)



求问大佬,为啥a.getImageWindowList(window2)这一行会报TypeError: 'NoneType' object is not callable这个错误?
最佳答案
2023-2-13 16:28:15
class Task:
    image_window_list = []
    def setId(self,Id):
        self.Id = Id

    def setNoDownlink(self,NoDownlink):
        self.setNoDownlink = NoDownlink

    def setTaskRequest(self,task_request):
        self.setTaskRequest = task_request

    def setTaskProperty(self,task_property):
        self.setTaskProperty = task_property

    def setTarget(self,task_target):
        self.setTarget = task_target

    def getImageWindowList(self,window):
        Task.image_window_list.append(window)                      # 这一行代码,你把 getImageWindowList 方法重新赋值了,而 append 的返回值是 None
   
a = Task()
window1 = 1
window2 = 2
print(type(window1))
print(type(window2))
a.getImageWindowList(window1)
a.getImageWindowList(window2)
print(a.image_window_list)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-2-13 16:28:15 | 显示全部楼层    本楼为最佳答案   
class Task:
    image_window_list = []
    def setId(self,Id):
        self.Id = Id

    def setNoDownlink(self,NoDownlink):
        self.setNoDownlink = NoDownlink

    def setTaskRequest(self,task_request):
        self.setTaskRequest = task_request

    def setTaskProperty(self,task_property):
        self.setTaskProperty = task_property

    def setTarget(self,task_target):
        self.setTarget = task_target

    def getImageWindowList(self,window):
        Task.image_window_list.append(window)                      # 这一行代码,你把 getImageWindowList 方法重新赋值了,而 append 的返回值是 None
   
a = Task()
window1 = 1
window2 = 2
print(type(window1))
print(type(window2))
a.getImageWindowList(window1)
a.getImageWindowList(window2)
print(a.image_window_list)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-13 17:18:06 | 显示全部楼层

那应该怎样把那个window2的值插进去呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-2-13 17:19:21 | 显示全部楼层
kking1 发表于 2023-2-13 17:18
那应该怎样把那个window2的值插进去呢?

我改的那个代码你有运行了吗?那个就已经把 windows2 的值插进去了呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-13 17:20:31 | 显示全部楼层

没重新赋值吧?只是把元素插入一个列表而已
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-13 17:22:06 | 显示全部楼层
isdkz 发表于 2023-2-13 17:19
我改的那个代码你有运行了吗?那个就已经把 windows2 的值插进去了呀

没看到你改的那个代码额
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-13 17:24:22 | 显示全部楼层
isdkz 发表于 2023-2-13 17:19
我改的那个代码你有运行了吗?那个就已经把 windows2 的值插进去了呀

哦,看到了,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-2-13 17:24:35 | 显示全部楼层
kking1 发表于 2023-2-13 17:22
没看到你改的那个代码额

class Task:
    image_window_list = []
    def setId(self,Id):
        self.Id = Id

    def setNoDownlink(self,NoDownlink):
        self.setNoDownlink = NoDownlink

    def setTaskRequest(self,task_request):
        self.setTaskRequest = task_request

    def setTaskProperty(self,task_property):
        self.setTaskProperty = task_property

    def setTarget(self,task_target):
        self.setTarget = task_target

    def getImageWindowList(self,window):
        Task.image_window_list.append(window)                      # 这一行代码,你把 getImageWindowList 方法重新赋值了,而 append 的返回值是 None
   
a = Task()
window1 = 1
window2 = 2
print(type(window1))
print(type(window2))
a.getImageWindowList(window1)
a.getImageWindowList(window2)
print(a.image_window_list)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-2-13 17:25:33 | 显示全部楼层
kking1 发表于 2023-2-13 17:20
没重新赋值吧?只是把元素插入一个列表而已

因为那个是我改了后的呀

你看看你没改之前的:

self.getImageWindowList = Task.image_window_list.append(window)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-16 10:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表