Appending an asterisk to the end of each line

MRAB python at mrabarnett.plus.com
Tue Jul 5 22:15:08 EDT 2016


On 2016-07-06 01:05, Seymore4Head wrote:
> On Wed, 6 Jul 2016 01:05:12 +0100, MRAB <python at mrabarnett.plus.com>
> wrote:
>
>>On 2016-07-06 00:45, Seymore4Head wrote:
>>> On Tue, 05 Jul 2016 19:29:21 -0400, Seymore4Head
>>> <Seymore4Head at Hotmail.invalid> wrote:
>>>
>>>>On Tue, 5 Jul 2016 19:15:23 -0400, Joel Goldstick
>>>><joel.goldstick at gmail.com> wrote:
>>>>
>>>>>On Tue, Jul 5, 2016 at 7:03 PM, MRAB <python at mrabarnett.plus.com> wrote:
>>>>>> On 2016-07-05 23:05, Seymore4Head wrote:
>>>>>>>
>>>>>>> import os
>>>>>>>
>>>>>>> f_in = open('win.txt', 'r')
>>>>>>> f_out = open('win_new.txt', 'w')
>>>>>>>
>>>>>>> for line in f_in.read().splitlines():
>>>>>>>     f_out.write(line + " *\n")
>>>>>>>
>>>>>>> f_in.close()
>>>>>>> f_out.close()
>>>>>>>
>>>>>>> os.rename('win.txt', 'win_old.txt')
>>>>>>> os.rename('win_new.txt', 'win.txt')
>>>>>>>
>>>>>>>
>>>>>>> I just tried to reuse this program that was posted several months ago.
>>>>>>> I am using a text flie that is about 200 lines long and have named it
>>>>>>> win.txt.  The file it creates when I run the program is win_new.txt
>>>>>>> but it's empty.
>>>>>>>
>>>>>> Although it creates a file called "win_new.txt", it then renames it to
>>>>>> "win.txt", so "win_new.txt" shouldn't exist.
>>>>>>
>>>>>> Of course, if there's already a file called "win_old.txt", then the first
>>>>>> rename will raise an exception, and you'll have "win_new.txt" and the
>>>>>> original "win.txt".
>>>>>>
>>>>>> --
>>>>>> https://mail.python.org/mailman/listinfo/python-list
>>>>>
>>>>>Why don't you comment out the renames, and see what happens?
>>>>
>>>>I really don't care if the filename gets renamed or not.  I commented
>>>>out the renames, but I still get a new file called win_new.txt and it
>>>>is empty.
>>>>
>>>>The original is unchanged.
>>>
>>> I just tried this on a 3 line text file and it works.
>>>
>>> I am looking through the text file and have found at least two
>>> suspicious characters.  One is a German letter and the other is a
>>> characters that has been replaced by a square symbol.
>>>
>>That suggests to me that it's an encoding problem (the traceback
>>would've indicated that).
>>
>>Specify an encoding when you open the files:
>>
>>f_in = open('win.txt', 'r', encoding='utf-8')
>>f_out = open('win_new.txt', 'w', encoding='utf-8')
>>
>>assuming that 'win.txt' is indeed encoded in UTF-8. (It might be
>>something like ISO-8859-1 instead.)
>
> Thanks.
>
> It is working now that I removed those two characters.
>
So, you didn't really fix it, you just changed the input to what your 
program is able to handle... :-)



More information about the Python-list mailing list