Аргумент TypeError: write() должен быть str, а не байтами (Python 3 vs Python 2)

Приведенный ниже код отлично работает для python 2.7.13

import os
with open('random.bin','w') as f:
    f.write(os.urandom(10))

Но выдает ошибку для python 3 3.6.0 | Anaconda 4.3.0 (64-бит) | (по умолчанию, 23 декабря 2016, 11:57:41) [MSC v.1900 64 бит (AMD64)]

Traceback (последний последний вызов): Файл "C:/Users/hsingh/PycharmProjects/Item3.py", строка 3, в     f.write(os.urandom(10)) ТипError: write() аргумент должен быть str, а не байтами

Любая причина, по которой есть разница в поведении или как это исправить.

+3
источник поделиться

Посмотрите другие вопросы по меткам или Задайте вопрос