Найти - Пользователи
Полная версия: Как сохранить файл в кириллице?
Начало » Python для новичков » Как сохранить файл в кириллице?
1 2 3 4 5
andrei186
Вобщем
filename=unicode(filename)
решает проблему
Получается, что
unicode(filename) и filename.encode('utf-8')
дают разные результаты?

doza_and
andrei186
unicode(filename) и filename.encode('utf-8')
дают разные результаты?

Однозначно! Первый дает unicode а второй utf-8. Прочувствуйте разницу.

andrei186
А где я проделаю…

В консоли конечно.
andrei186
py.user.next
>>> 'ффф'.encode('utf-8').decode('cp1251')
'ффф'
>>>
Спасибо, но у меня все гораздо сильнее запущенно:
>>> 'ффф'.encode('utf-8').decode('cp1251')
File "<pyshell#6>", line 1, in <module>
'ффф'.encode('utf-8').decode('cp1251')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf4 in position 0: ordinal not in range(128)
andrei186
doza_and
Однозначно! Первый дает unicode а второй utf-8. Прочувствуйте разницу.
а код
u'ффф.jpg' 
дает unicode или utf-8 ?

doza_and
В консоли конечно.
Я там сообщил, что Виндовая командная строка про dir ничего не возвращает, про ls вщзвращает что она не явл командой или исполняемым файлом. А в Терминале Дебиана - тоже ничго не возвращает.
Я думал, что виндовая командная строка и Терминал Дебиана - суть консоли. Тогда что Вы подразумеваете под консолью
andrei186
П.С. Где на этом форуме кнопка вставить тег
[code][/code]?
py.user.next
andrei186
Спасибо, но у меня все гораздо сильнее запущенно:
Открой командную строку cmd.exe, там запусти python и выполняй всё в нём.
doza_and
andrei186
Где на этом форуме кнопка вставить тег
12 кнопка на тулбаре. помечена стилизованым <>
andrei186
дает unicode или utf-8 ?
Даст unicode, но только в том случае, когда кодировка файла совпадает с кодировкой, указанной в начале файла (модуля питона).
andrei186
Я там сообщил, что Виндовая командная строка про dir ничего не возвращает
Команду вы какую выполнили?
dir >1
В этом случае стандартный вывод команды перенаправлен в файл с именем “1”. Там и ищите результат.
andrei186
py.user.next
Открой командную строку cmd.exe, там запусти python и выполняй всё в нём
Дало ту же ошибку, что и IDLE:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf4 in position 0: ordinal not in range(128)
Какой из этого вывод что подкрутить?
ПС. А что, результат в командной строке ожидался другим, чем в IDLE?
andrei186
py.user.next
# coding: utf-8
У меня стоит
# -*- coding: UTF-8 -*-
еще видел
#coding: utf-8
Эти вариации имеют разный эффект?
Также мой файл предполагается использоваться на Линуксе, для которого первой строкой идет
#!/usr/bin/ python

В этом случае, которое заклинание должно быть поставлено первым?
py.user.next
andrei186
Дало ту же ошибку, что и IDLE:
Просто консоль открой и введи там
'ффф'

andrei186
для которого первой строкой идет
#!/usr/bin/ python
Это неправильно.
Должно быть
#!/usr/bin/env python
# coding: utf-8
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB