Removing Trailing Spaces


Hey everyone, new here.

I'm looking for a little help with my program. Its supposed to take a txt file called test.txt, and removes all spaces trailing at the end of lines.

ex. (note the spaces)
"python " -> "python"
"daniweb is great" -> "daniweb is great"
" forum" -> " forum"

The code below has gone through many rewrites, but it still doesn't work. At first it would delete a good chunk of the txt in the file seemingly randomly, but now it deletes all the text from the file.

txt = open(test.txt,"r")
loriginal = f.readline()
txt = open(test.txt,"w")
l = line.split()
for i in range(len(l)):
    if l[i] == "/n":
        del line[i:]

Needless to say, this piece of code doesn't work. Can anyone shed some light on this and help me out?

Thanks in advance.


Featured Replies in this Discussion


You can use a regular expression

import re
sp_regex = re.compile(r"[ \t]+$", re.MULTILINE)
filename = "test.txt"
with open(filename) as f_in:
    content =
with open(filename, "w") as f_out:
    f_out.write(sp_regex.sub('', content))

test.txt is not good variable name you should probably have 'test.txt', loriginal will contain fist line of file, line is not defined, split is splitting (you should use rstrip), newline is by the way '\n'... Your code is junk. Start over, if you need to cheat, check my answer in the other thread.


Do you want to strip all spaces ???
This will join all the text together.

New line is also counted as space so what are you realy looking for?

Question Answered as of 4 Years Ago by Gribouillis, richieking and pyTony
This question has already been solved: Start a new discussion instead
Start New Discussion
Tags Related to this Article