一次打开多个文本文件

时间:2018-08-28 10:12:06

标签: python python-3.x

大家好,我目前正在尝试根据用户的输入打开多个文本文件,但是我不知道该怎么做。我会打开文件,然后将它们分类到字典中,对您有所帮助!

这是我的代码:

ans = int(input('How many days of data do you have? '))  
temps1 = open('temps1.txt')    
temps2 = open('temps2.txt')  
temps3 = open('temps2.txt')  
for line in temps1: '  

例如,如果ans = 3,则打开temps1,temps2和temps3等

我也无法将数字除以4,然后将其放入完整的字典中

num = int(num)  
num = num/4  
f[room] = f.get(room, 0) + int(num)  

当我运行此程序时,例如,如果num等于25,当我将其放入字典时,它会被4除以6.25,它变成6。 谢谢!

3 个答案:

答案 0 :(得分:2)

您可以将with语句与多个open()一起使用。

with open('temps1.txt') as f1, open('temps2.txt') as f2, open('temps3.txt') as f3:
    pass

答案 1 :(得分:1)

您不应该将num转换为int,因为它不会让您拥有小数部分。

答案 2 :(得分:0)

第一个请求:

file_dict = {}
ans = int(input("How many files would you want to open?"))
foreach file_num in range(0, ans):
    file_name = "temps" + str(file_num) + ".txt"
    file_dict[file_name] = open(file_name)

您将收到一个键为“ file_name”且值=文件处理程序的字典。

请考虑到此代码具有0个“检查”语句。

第二个请求:

您的数字从6.25变为6的原因是因为您将其转换为int(“ int(num”)),这是因为整数不能包含十进制值。

确切地了解您想要的东西有点困难,所以让我知道我是否误解了。