I have a text file like this:-
V1xx AB1
V2xx AC34
V3xx AB1
Can we add ; at each end of line through python script?
V1xx AB1;
V2xx AC34;
V3xx AB1;
Here's what you can try. I have overwritten the same file though.
You can try creating a new one(I leave it to you) - You'll need to modify your with statement a little : -
lines = ""
with open('D:\File.txt') as file:
for line in file:
lines += line.strip() + ";\n"
file = open('D:\File.txt', "w+")
file.writelines(lines)
file.flush()
UPDATE: - For in-place modification of file, you can use fileinput module: -
import fileinput
for line in fileinput.input('D:\File.txt', inplace = True):
print line.strip() + ";"
#Open the original file, and create a blank file in write mode
File = open("D:\myfilepath\myfile.txt")
FileCopy = open("D:\myfilepath\myfile_Copy.txt","w")
#For each line in the file, remove the end line character,
#insert a semicolon, and then add a new end line character.
#copy these lines into the blank file
for line in File:
CleanLine=line.strip("\n")
FileCopy.write(CleanLine+";\n")
FileCopy.close()
File.close()
#Replace the original file with the copied file
File = open("D:\myfilepath\myfile.txt","w")
FileCopy = open("D:\myfilepath\myfile_Copy.txt")
for line in FileCopy:
File.write(line)
FileCopy.close()
File.close()
Notes: I have left the "copy file" in there as a back up. You can manually delete it or use os.remove() (if you do that don't forget to import the os module)
;to them and append to a new file?