Форум сайта python.su
0
python 3.2, linux
запускаю питон в консоли, выполняю
subprocess.Popen('grep "тест" log.txt', shell=True,stdout=subprocess.PIPE, stdin=subprocess.PIPE)as_hlp.py", line 206, in execute stdout=device, stdin=subprocess.PIPE) File "/usr/local/lib/python3.2/subprocess.py", line 736, in __init__ restore_signals, start_new_session) File "/usr/local/lib/python3.2/subprocess.py", line 1175, in _execute_child restore_signals, start_new_session, preexec_fn) UnicodeEncodeError: 'ascii' codec can't encode characters in position 26-28: ordinal not in range(128)
def _print(text):
sys.stdout.buffer.write(text.encode('utf8'))
sys.stdout.flush()
line 1175, in _execute_child restore_signals, start_new_session, preexec_fn) TypeError: Can't convert 'int' object to str implicitly
Офлайн
0
неужели никто не знает
или я задал неимоверно глупый вопрос?
Офлайн
0
Игнат
вроде в третьем питоне все строки и так по умолчанию в utf-8?
Офлайн
20
А если через stdin передавать? Можно затем xargs использовать. Изврат конечно.
..bw
Офлайн
0
>>вроде в третьем питоне все строки и так по умолчанию в utf-8?
да, только ошибка от этого не пропадает
>>А если через stdin передавать? Можно затем xargs использовать. Изврат конечно.
можно поподробнее? не очень понимаю о чем речь
обратите внимание, что если делать подобное в интерактивном режиме питона - то все ок
проблема именно в апаче
Офлайн