python - Unicode编码错误: Ascii codec can't encode character u2581 in position 0: ordinal not in range(128)

标签 python terminal chatbot

Traceback (most recent call last): File "train.py", line 18, in tf.app.run(main=nmt.main, argv=[os.getcwd() + '\nmt\nmt\nmt.py'] + unparsed) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 48, in run _sys.exit(main(_sys.argv[:1] + flags_passthrough)) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/nmt.py", line 551, in main run_main(FLAGS, default_hparams, train_fn, inference_fn) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/nmt.py", line 544, in run_main train_fn(hparams, target_session=target_session) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/train.py", line 271, in train sample_tgt_data) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/train.py", line 142, in run_full_eval sample_src_data, sample_tgt_data) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/train.py", line 55, in run_sample_decode infer_model.batch_size_placeholder, summary_writer) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/train.py", line 454, in _sample_decode utils.print_out(b" src: " + utils.format_sentence(src_data[decode_id], hparams.subword_option))
File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/utils/misc_utils.py", line 193, in format_sentence sentence = format_spm_text(sentence) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/utils/misc_utils.py", line 181, in format_spm_text return u"".join(format_text(symbols).decode("utf-8").split()).replace( File "/usr/lib/python2.7/encodings/utf_8.py", line 16, in decode return codecs.utf_8_decode(input, errors, True) UnicodeEncodeError: 'ascii' codec can't encode character u'\u2581' in position 0: ordinal not in range(128)

Traceback (most recent call last): File "train.py", line 18, in tf.app.run(main=nmt.main, argv=[os.getcwd() + '\nmt\nmt\nmt.py'] + unparsed) File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 48, in run _sys.exit(main(_sys.argv[:1] + flags_passthrough)) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/nmt.py", line 551, in main run_main(FLAGS, default_hparams, train_fn, inference_fn) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/nmt.py", line 544, in run_main train_fn(hparams, target_session=target_session) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/train.py", line 271, in train sample_tgt_data) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/train.py", line 142, in run_full_eval sample_src_data, sample_tgt_data) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/train.py", line 55, in run_sample_decode infer_model.batch_size_placeholder, summary_writer) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/train.py", line 454, in _sample_decode utils.print_out(b" src: " + utils.format_sentence(src_data[decode_id], hparams.subword_option))
File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/utils/misc_utils.py", line 193, in format_sentence sentence = format_spm_text(sentence) File "/home/paperspace/Desktop/nmt-chatbot/nmt/nmt/utils/misc_utils.py", line 181, in format_spm_text return u"".join(format_text(symbols).decode("utf-8").split()).replace( File "/usr/lib/python2.7/encodings/utf_8.py", line 16, in decode return codecs.utf_8_decode(input, errors, True) UnicodeEncodeError: 'ascii' codec can't encode character u'\u2581' in position 0: ordinal not in range(128)

我在这些代码行中遇到错误:

def format_spm_text(symbols):
  """Decode a text in SPM (https://github.com/google/sentencepiece) 
  format."""
  return u"".join(format_text(symbols).decode("utf-8").split()).replace(
      u"\u2581", u" ").strip().encode("utf-8")

我正在尝试通过运行名为“train.py”的文件来训练聊天机器人。我使用命令“sudo python train.py”,我当前在 Ubuntu 中的 python 版本是 3.6 版本。在我的本地 MacOS 上,完全相同的代码似乎运行良好,但我在其上运行 Python 版本 2.7。

最佳答案

试试这个:

def format_spm_text(symbols): 
  return u"".join(format_text(symbols).decode("unicode-escape").split()).replace(
  u"\u2581", u" ").strip().encode("utf-8")

关于python - Unicode编码错误: Ascii codec can't encode character u2581 in position 0: ordinal not in range(128),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49557325/

相关文章:

python - 使用在每个实例级别而不是每个类定义的属性

python - 使用python在终端上动画

java - 当我从Java代码执行C++时未显示任何输出

python - 安装 python3 后,我无法在 ubuntu 16.04 上打开终端

c# - 如何使用SDK V4在C#中修改WEBCHAT中BOT和USER输入的UI?

python - 如何在 Django Python 中使用检测意图(文本)?

python - 如何计算字符串中子字符串的连续重复次数?

python - 如何在 Pandas 中执行依赖于值的数据透视表/Groupby?

python - 尝试在 DockerFile 中 pip 安装私有(private)存储库

nlp - 如何构建 Jira AI 聊天机器人?