Writerow不写入CSV Python

Writerow不写入CSV Python,python,csv,Python,Csv,我是Python的初学者,正在尝试使用Python脚本的输出创建我的第一个csv文件。下面是我的代码: times = ["1AM", "2AM", "3AM"] for time in times: with open("file1.csv", 'w', newline='', encoding = "utf-8") as dog: with open("fil

我是Python的初学者,正在尝试使用Python脚本的输出创建我的第一个csv文件。下面是我的代码:

times = ["1AM", "2AM", "3AM"]
for time in times:
    with open("file1.csv", 'w', newline='', encoding = "utf-8") as dog:
        with open("file2.csv", 'r', encoding = "utf-8") as cat:
            reader = csv.reader(cat, delimiter=",")
            writer = csv.writer(dog, delimiter =',')
            for row in reader:
                if time in row:
                    print(time, row[0:2])
                    writer.writerow(time)
                    writer.writerow(row[0:2])
编辑: 预期产出:

1AM baseball, bat
1AM tennis, racket
2AM soccer, ball
3AM fashion, show
3AM book, store
3AM kitchen, sink

我试图用这段代码做的是让Python找到所有有那个时间的行,然后打印出时间和包含那个时间的每行的前两个值。我正在尝试将此输出转换为csv,但我的csv完全为空,包含0个字节。另外,当我在excel中打开它时,我会收到一条警告消息,说明该文件是txt文件,但文件扩展名仍然是.csv。

请编辑您的问题,并将示例输入和预期输出放在那里。您以写模式打开输出文件,因此在每个循环中它都会被截断。如果最后一个循环没有输出任何数据,则会得到一个空文件。在循环之前打开它一次。使用附加模式“a”而不是我同意的写入模式@ThierryLathuille@Subham请注意,使用append模式将在脚本运行之间继续追加到文件,这可能不是OP所期望的。