gpt4 book ai didi

包含变量的 Python 属性名称

转载 作者:太空宇宙 更新时间:2023-11-03 14:31:15 27 4
gpt4 key购买 nike

我正在使用 Qt+Python 制作桌面程序,目前我遇到了调用一些名称中带有变量的属性的问题

self.checkBox_Answer1.clear()
self.checkBox_Answer2.clear()
self.checkBox_Answer3.clear()
self.checkBox_Answer4.clear()

数字是变量,所以我想要类似的东西

self."checkBox_Answer%d" % (A).clear()

其中“A”是我计算的变量,但这种方式编码不起作用

也尝试过

self.str("checkBox_Answer"+"%d" % (A)).clear()  
self.checkBox_Answer+"%d" % (A).clear()

没有任何作用

我知道我可以做类似的事情

if A == 1:
self.checkBox_Answer1.clear()
if A == 2:
self.checkBox_Answer2.clear()
if A == 3:
self.checkBox_Answer3.clear()
if A == 4:
self.checkBox_Answer4.clear()

但是没有更多的Pythonic方法来做这些事情吗?

最佳答案

您可以使用反射来获取属性的名称 getattr 。它会影响你的表现,但这是比 map 最干净的方式。

它看起来像:

getattr(self, "checkBox_Answer"+"%d" % (A))

关于包含变量的 Python 属性名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47274240/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com