Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 9, 2014 15:36:23

electromind
Зарегистрирован: 2013-07-21
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

open() -> TypeError: an integer is required

Всем привет. Столкнулся с с проблемой при вызове стандартного метода open()
http://dumpz.org/1271608/ - код
для записи в файл не могу вызвать стандартный метод open() получаю:
TypeError: an integer is required
я так понимаю что вызывается os.open()
как достучатся до build-in open()?

python 2.7.6

Отредактировано electromind (Дек. 9, 2014 15:42:52)

Офлайн

#2 Дек. 9, 2014 16:09:05

0x10
Зарегистрирован: 2014-12-07
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

open() -> TypeError: an integer is required

Третий аргумент функции - целое число, означающее тип буферизации/размер буфера. В приведенном коде третьим аргументом почему-то передается строка - кодировка.

Офлайн

#3 Дек. 9, 2014 16:22:07

terabayt
От: Киев
Зарегистрирован: 2011-11-26
Сообщения: 1099
Репутация: +  103  -
Профиль   Отправить e-mail  

open() -> TypeError: an integer is required

кодировка в open эт уже в 3 пайтоне. и то тогда нужно писать

with open("translate.csv", "w", encoding="utf-8") as f:
а во втором пайтоне нужно использовать дополнительный модуль
import codecs
...
with codecs.open("translate.csv", "w", encoding="utf-8") as f:



————————————————
-*- Simple is better than complex -*-

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version