如何根据用户的输入迭代循环?

时间:2012-08-23 18:46:15

标签: python user-interface user-input

我是新来的,但在这里经常寻求帮助。无论如何,我试图使用tkSimpleDialog.askinteger()来询问用户需要读入程序的文件数量。我想根据用户在for循环中输入的整数来读取文件。我会为文件名索引文件名f [1]到f [n]。任何意见都将非常感谢!

请查看以下内容,了解我想要了解的内容:

def callback2():
    NumDates = tkSimpleDialog.askinteger("NDates", "How many dates are there?")
    for dates in NumDates:
        filename[dates] = tkFileDialog.askopenfilename() 
        dates = dates + 1
        filenameDates.append(filename)

1 个答案:

答案 0 :(得分:7)

假设NumDates是一个整数,那么你正在寻找范围函数:

for dates in range(NumDates):
    ...

在python 2.x中,您可以使用xrange代替。这不会创建一个中间列表,所以很多人都喜欢它。在python 3中,xrange被重命名为range,并且删除了返回列表的前一个范围函数 - 当列表很小时,我通常只使用range来兼容,但是存在工具(2to3)也可以为你处理这些细节,所以无论如何这都不是什么大问题。

预留

另外,正如所写,实际上不需要dates = dates + 1(必要时更好地写为dates += 1。)