大家好,我目前正在尝试根据用户的输入打开多个文本文件,但是我不知道该怎么做。我会打开文件,然后将它们分类到字典中,对您有所帮助!
这是我的代码:
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。 谢谢!
答案 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”)),这是因为整数不能包含十进制值。
确切地了解您想要的东西有点困难,所以让我知道我是否误解了。