假设文本文件包含以下元素:
A B C D
我想使用python将这些元素写入CSV文件,如下所示:
A,A A,B A,C A,D B,A B,B B,C B,D ...
我尝试用csv格式编写文本,其中包含如下乘法数据:
import csv with open(r'C:\Users\soso-\Desktop\SVM\DataSet\drug_list.txt') as f: with open('integrated_x.csv', 'w') as out_file: for line in f: for x in range(548): out_file.write(f"{line.strip()}\n") f.close() out_file.close()
输出:
A A A A B B B ....
然后在其他csv文件中添加csv文件的新列,如下所示:
with open(r'C:\Users\soso-\Desktop\SVM\DataSet\drug_list.txt') as f: with open(r'integrated_x.csv') as read_obj, \ open('integrated_x12.csv', 'w', newline='') as write_obj: # Create a csv.reader object from the input file object csv_reader = csv.reader(read_obj) # Create a csv.writer object from the output file object csv_writer = csv.writer(write_obj) # Read each row of the input csv file as list for row in csv_reader: for line in f: # Append the default text in the row / list row.append(line) # Add the updated row / list to the output file csv_writer.writerow(row)
输出:
A,"A" A,"A,B" A,"A,B,C"
因此,输出并不像预期的那样,它将列附加为列表并复制前一行。我如何修复它?