我有一个CSV文件,例如BM13302,EM13203等我必须从文件中读取此内容,然后将其重新格式化为" BM13302"," EM13203"等内容
我遇到的问题是如何导出(写剪贴板或文件,我可以从中剪切和粘贴。我以一种不干净的格式,我必须花一点时间格式化它。我想将python指向目录并超过文件中的列表,然后将其导出那样我需要的所有内容。
我有以下代码
import os
f = open(r"/User/person/Desktop/folder/file.csv")
csv_f = csv.reader(f)
for row in csv_f:
print(row)
我得到了预期的结果
我想找出如何列出列表(?)和这样的格式 'BM1234','BM2351','20394',....等并将其复制到剪贴板
我以为在做
之类的事情with open('/Users/person/Desktop/csv/export.txt') as f:
f.write("open=", + "', '")
f.close()
什么都没有打印。找不到我需要的例子。有人能帮助我吗?
非常感谢!
您可以为您提供CSV模块的报价。据我所知,Python标准Libs中没有剪贴板,但是那里有各种机制。在这里,我正在使用pyperclip
,这对于仅文本副本是合理的。
import pyperclip
import csv
import io
def clip_csv(filename):
outbuf = io.StringIO()
with open('file.csv', newline='') as infile:
incsv = csv.reader(infile, skipinitialspace=True)
outcsv = csv.writer(outbuf, quotechar="'", quoting=csv.QUOTE_ALL)
outcsv.writerows(incsv)
pyperclip.copy(outbuf.getvalue())
clip_csv('file.csv')
# DEBUG: Verify by printing clipboard
print(pyperclip.paste())
我不确定,但我认为您尝试将报价char '
添加到 csv
import csv
with open('export.csv', 'w') as f:
# use quote char `'` for all data
writer = csv.writer(f, quotechar="'", quoting=csv.QUOTE_ALL)
writer.writerow(["BM1234", "BM2351", "20394"])