gpt4 book ai didi

python-3.x - 函数调用中的Python循环列表

转载 作者:行者123 更新时间:2023-12-02 00:58:27 25 4
gpt4 key购买 nike

这是我在 StackOverflow 上的第一个问题。我总是通过谷歌搜索找到我要找的东西,但这次我卡住了,想不通。

我是 Python 的初级程序员,仍在学习很多东西。

我想用一小段代码更改用户界面中的日期编辑框以设置当前日期时间。代码如下所示。

self.dateEdit_2.setDateTime(QtCore.QDateTime.currentDateTime())

现在我想将每个 dateEdit 框更改为相同的,从 2 开始到 29,而不用输入每一行。

我试图用一个填充列表创建一个 for 循环。我让它打印出我想要的东西,但是我如何让“set_date_numb”成为一个满足我想要的属性。

希望你明白,谢谢。

    dateTimeList = ['2','3','4','5','6','7','8','9',
'10','11','12','13','14','15','16','17','18','19','20',
'21','22','23','24','25','26','27','28','29']
indexval = 0
for i in range(len(dateTimeList)):
date_numb = (dateTimeList[indexval])
set_date_numb ='self.dateEdit_{}.setDateTime(QtCore.QDateTime.currentDateTime())'.format(date_numb)
print(set_date_numb)
indexval += 1

最佳答案

您可以使用 getattr(),请参阅文档 here .由于您所追求的功能是实例的成员,因此您可以使用它们的名称作为字符串来获取它们(我认为这是您面临的主要问题):

dateTimeList = [str(x) for x in range(2,30)]

for dt in dateTimeList:
name = "dateEdit_{}".format(dt)
currentDateEdit = getattr(self, name)
currentDateEdit.setDateTime(QtCore.QDateTime.currentDateTime())

关于python-3.x - 函数调用中的Python循环列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52478331/

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