Python在CSV中向列插入引号
我对python一无所知。 我想做的是创建一个脚本来编辑CSV文件,这样它就可以将第3列中的每个字段都用引号括起来。我一直找不到太多的帮助,这是不是又快又容易?谢谢Python在CSV中向列插入引号,python,Python,我对python一无所知。 我想做的是创建一个脚本来编辑CSV文件,这样它就可以将第3列中的每个字段都用引号括起来。我一直找不到太多的帮助,这是不是又快又容易?谢谢 column1,column2,column3 1111111,2222222,333333 我会先看一看照片 然后将其写回csv文件。这是一个相当粗糙的解决方案,非常特定于您的请求(假设您的源文件名为“csvfile.csv”,位于C:\Temp中) 做你想做的事情有很多更优雅的方式,但我试着把它分解成基本的块来展示每一位是如何
column1,column2,column3
1111111,2222222,333333
我会先看一看照片
然后将其写回csv文件。这是一个相当粗糙的解决方案,非常特定于您的请求(假设您的源文件名为“csvfile.csv”,位于C:\Temp中)
做你想做的事情有很多更优雅的方式,但我试着把它分解成基本的块来展示每一位是如何工作的。你的意思是“在第3列的每个字段周围加引号”吗?还有,你为什么要这样做?只有在少数特殊情况下才需要引用。您试图解决的实际问题是什么?对于任何具有更简单用例的人:在编写器中使用
csv.QUOTE_ALL
,以防您要引用所有列中的所有单元格。
import csv
filename = 'file.csv'
with open(filename, 'wb') as f:
reader = csv.reader(f)
for row in reader:
row[2] = "'%s'" % row[2]
import csv
newrow = []
csvFileRead = open('c:/temp/csvfile.csv', 'rb')
csvFileNew = open('c:/temp/csvfilenew.csv', 'wb')
# Open the CSV
csvReader = csv.reader(csvFileRead, delimiter = ',')
# Append the rows to variable newrow
for row in csvReader:
newrow.append(row)
# Add quotes around the third list item
for row in newrow:
row[2] = "'"+str(row[2])+"'"
csvFileRead.close()
# Create a new CSV file
csvWriter = csv.writer(csvFileNew, delimiter = ',')
# Append the csv with rows from newrow variable
for row in newrow:
csvWriter.writerow(row)
csvFileNew.close()