[Python] Eliminare carattere fine riga

Daniele Varrazzo piro a develer.com
Mar 24 Lug 2012 14:50:46 CEST


On 2012-07-24 13:44, Marco De Paoli wrote:
>> Su linux gli universal newline sono disabilitati di default. Mi 
>> sembra che
>> su windows siano abilitati di default ma non ne sono sicuro. 
>> Qualcuno puņ
>> fare una prova?
>>
>>     python -c "print 'hello'; print 'world'" > test
>>     python -c "print list(open('test', 'r'))"
>>     python -c "print list(open('test', 'rU'))"
>>
>> Cosa restituiscono gli ultimi 2 comandi in windows?
>
>
> Microsoft Windows XP [Versione 5.1.2600]
> (C) Copyright 1985-2001 Microsoft Corp.
>
> C:\Documents and Settings\dex>python -c "print 'hello'; print 
> 'world'" >
> test
>
> C:\Documents and Settings\dex>python -c "print list(open('test', 
> 'r'))"
> ['hello\n', 'world\n']
>
> C:\Documents and Settings\dex>python -c "print list(open('test', 
> 'rU'))"
> ['hello\n', 'world\n']
>
> C:\Documents and Settings\dex>python
> Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit
> (Intel)] on
> win32

Grazie, in questo caso "rstrip('\n')" dovrebbe funzionare senza 
problemi anche su windows (ma non su file con CRLF in linux, a meno che 
non sia stato aperto con 'rU').


-- 
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com


Maggiori informazioni sulla lista Python