Reputation: 63
I am a beginner in python. I need help with the following
I have a comma separated csv file, eg
a,b,c
d,e,f
g,h,i
I need to convert to a string variable eg s='a,b,c\n,d,e,f\n,g,h,i\n'
I tried something, but i am going wrong somewhere.
import os
import csv
Filename=r"c:\Users\das\Desktop\a.csv"
z=open(Filename, 'r')
reader=csv.reader(Filename.split('\n'),delimiter=',')
def csv2str():
for row in reader:
v=','.join(row)
a=csv2str()
Upvotes: 6
Views: 21234
Reputation: 78564
You don't need the csv module to do that. Just call the read
method of the file object to read in all the lines as one string:
with open(filename) as f:
s = f.read() + '\n' # add trailing new line character
print(repr(s))
# 'a,b,c\nd,e,f\ng,h,i\n'
I'm printing the repr
of the string because a print of the string itself i.e. print(a)
will not show the newline character as \n
, but will show the string in its different lines.
Upvotes: 9