Python 要求用户输入数据并在他们输入后运行;“完成”;

Python 要求用户输入数据并在他们输入后运行;“完成”;,python,input,Python,Input,我想写一个代码/程序,要求用户输入文件名(有些用户有10个以上的输入文件),然后一旦他们按“完成”,程序将执行所有文件 例如,用户有3个文件 1) 他们输入了3个文件名 2) 他们按“完成” 3) 程序运行3个文件(我已经编写了我的程序,所以我不需要它,但它应该类似于将3个文件保存在一个列表中[file1,file2,file],因为我的程序可以用于列表中的x,然后加载每个文件) 如果可能的话,最好能够统计他们输入了多少文件 我的代码如下: a = 0 a = input("Please en

我想写一个代码/程序,要求用户输入文件名(有些用户有10个以上的输入文件),然后一旦他们按“完成”,程序将执行所有文件

例如,用户有3个文件

1) 他们输入了3个文件名
2) 他们按“完成”
3) 程序运行3个文件(我已经编写了我的程序,所以我不需要它,但它应该类似于将3个文件保存在一个列表中[file1,file2,file],因为我的程序可以用于列表中的x,然后加载每个文件)

如果可能的话,最好能够统计他们输入了多少文件

我的代码如下:

a = 0 
a = input("Please enter your filenames without the '.txt' and press 'Done' to run " )
a += 1
print("---------- File {} ----------".format(a))

有没有一个简单的方法可以做到这一点?我尝试使用for循环,但它将是非常长的代码,仅用于询问用户输入。提前感谢

积累输入列表,完成后中断循环

names = []
while True:
    a = input("file name or 'Done'")
    if a == "Done":
        break
    else:
        names.append(a)
# user typed done
print("entered {} names".format(len(names)))
for n in names:
   print('{}.txt'.format(n))

累积输入列表,完成后中断循环

names = []
while True:
    a = input("file name or 'Done'")
    if a == "Done":
        break
    else:
        names.append(a)
# user typed done
print("entered {} names".format(len(names)))
for n in names:
   print('{}.txt'.format(n))

你的循环尝试在哪里?这比复制10次要短。你在哪里尝试循环?这比复印10次要短。非常感谢,先生。我会参考这个。非常感谢你,先生。我将提及这一点。