In [20]:
import sys
sys.version_info.major
Out[20]:
In [11]:
some_text = u'€®©Ʃ'
print(some_text)
print(type(some_text))
encoded_some_text = some_text.encode('utf-8')
print(encoded_some_text)
print(type(encoded_some_text))
# Output in Python 3:
# €®©Ʃ
# <class 'str'>
# b'\xe2\x82\xac\xc2\xae\xc2\xa9\xc6\xa9'
# <class 'bytes'>
In [26]:
import os
to_file_map = {2: lambda s: s.encode('utf-8'), 3: lambda s: s}
with open('/tmp/some_text', 'w') as handle:
handle.write(to_file_map[sys.version_info.major](some_text))
handle.write('\n')
for line in os.popen('cat /tmp/some_text'):
print(line[0: -1])
for line in open('/tmp/some_text'):
print(line[0: -1])
# Directly on Bash
# $ cat /tmp/some_text
# €®©Ʃ
In [ ]: