Странная вещь. В коде у меня сравниваются значения юникодовых строк, между которыми приходится вручную вставлять пробел. Выглядит это примерно так:
def popItem(item_name, items_list):
for i, item in enumerate(items_list):
cur_name = str(item[1]) + u"\xa0" + str(item[2])
if item_name == cur_name:
items_list.pop(i)
Прикол в том, что в Eclipse, где я пишу и отлаживаю проект, все почему-то работает на ура. Но стоит только запустить тот же файл через bash:
File “/home/meow-nofer/workspace/pyGrabber/src/test.py”, line 189, in popItem
cur_name = str(item) + u“\xa0” + str(item)
UnicodeEncodeError: ‘ascii’ codec can't encode characters in position 14-16: ordinal not in range(128)
То есть энкодер почему-то не понимает вставленный мной пробел. Как грамотно исправить положение?