У меня есть код python, где он возьмет первый столбец файла sample.csv и скопирует его в файл temp1.csv. Теперь я хотел бы сравнить этот файл csv с другим файлом serialNumber.txt для любых обычных строк. Если найдены какие-либо общие строки, он должен записать в файл результата. Мой temp1.csv создается правильно, но проблема заключается в том, что созданный файл результата пуст.Запись файла не работает, как ожидалось
script.py
import csv
f = open("sample.csv", "r")
reader = csv.reader(f)
data = open("temp1.csv", "wb")
w = csv.writer(data)
for row in reader:
my_row = []
my_row.append(row[0])
w.writerow(my_row)
data.close()
with open('temp1.csv', 'r') as file1:
with open('serialNumber.txt', 'r') as file2:
same = set(file1).intersection(file2)
print same
with open('result.csv', 'w') as file_out:
for line in same:
file_out.write(line)
print line
sample.csv
M11435TDS144,STB#1,Router#1
M11543TH4292,STB#2,Router#1
M11509TD9937,STB#3,Router#1
M11543TH4258,STB#4,Router#1
serialNumber.txt
G1A114042400571
M11543TH4258
M11251TH1230
M11435TDS144
M11543TH4292
M11509TD9937
file1 и file2, как вы их объекты файл, таким образом, они не могут быть одинаковыми. Вам нужно прочитать каждую строку на каком-то объекте (работает набор), а затем пересечь два набора. – PyNEwbie
Когда вы читаете 'temp1.csv', вам нужно использовать' csv.reader' вместо того, чтобы читать его как простой файл? – CAB