Средство записи файлов идет по строке, а не по столбцу. Каждый раз, когда вы называете «написать», он пишет строку. Выход из al oop не приводит к сбросу любого счетчика на ноль.
Сначала вы должны составить список V1.ID, а затем выполнить итерацию по двум спискам и написать строку с file.write("{0} {1}".format(timestamp, id))
.
*. 1005 * Возможно, вы могли бы объединить два списка (
https://docs.python.org/3.8/library/functions.html#zip), чтобы сделать итерацию проще.
Поскольку вы ответили, что это не работает: это не работает?
class Videocamera(object):
timestamp = []
ID = []
error = []
def __init__(self, num_id):
self.num_id = num_id
file = open("Rilevazioni videocamera 1.txt", "w")
V1 = Videocamera("VC00")
for n in range(10):
V1.ID.append(0)
for n in range(10):
V1.ID.append(1)
for n in range(10):
V1.ID.append("Pe0000")
for n in range(10):
V1.ID.append("Pe0001")
for n in range(10):
V1.ID.append(1)
for n in range(10):
V1.ID.append("Pe0002")
for n in range(10):
V1.ID.append(1)
for n in range(10):
V1.ID.append(0)
for n in range(10):
V1.ID.append("Pe0001")
for n in range(10):
V1.ID.append("Pe0000")
for n in V1.ID:
if n != 1:
V1.error.append(False)
else:
V1.error.append(True)
V1.timestamp = [n for n in range(100)]
for n in range(len(V1.timestamp)):
file.write(str(V1.timestamp[n])+" "+str(V1.ID[n]))
file.write("\n")
или, или эквивалентно for n in range(100)
. Быстро и грязно, но работает, если это:
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 1
11 1
12 1
13 1
14 1
15 1
16 1
17 1
18 1
19 1
20 Pe0000
21 Pe0000
22 Pe0000
23 Pe0000
24 Pe0000
et c ... ваш ожидаемый результат. Если это не ваш ожидаемый результат, то не могли бы вы уточнить?