26.06.2013
Рассмотрим удобную и потому частоиспользуемую конструкцию <> (null filehandle), имитирующую аналогичную фичу из sed и awk, когда один и тот же код может использоваться для чтения из STDIN или из файлов, чьи имена переданы в аргументах командной строки. Такая же конструкция используется в однострочниках с опцией -n:
while(<>){
# do something with line
chomp;
[...]
linux
-
0 комментариев
04.06.2013
Если при попытке записи юникодной строки в файл:
with open(‘/tmp/fail’,'w’) as f:
f.write(u’привет!’)
вываливается исключение:
UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 0-6: ordinal not in range(128)
можно не перечитывать судорожно Python Unicode HOWTO, а открывать файл с помощью функции codecs.open, обеспечивающей прозрачное перекодирование из внутреннего формата python в нужную кодировку:
import codecs
with codecs.open(‘/tmp/success’,'w’,'utf-8′) as f:
[...]
linux
-
1 комментарий