【问题标题】:Non-ASCII chars in python file deletes other chars [closed]python文件中的非ASCII字符删除其他字符[关闭]
【发布时间】:2013-12-25 04:10:03
【问题描述】:

我真的不知道该如何命名这个问题。让我解释一下会发生什么。我想使用 nano 在 python 文件中输入类似test ('ö') 的内容。

test ('ö    #so far so good, but when I type the closing citation mark: 
test 'ö'    #that's happening

这只是在终端中的 python 文件中键入非 ASCII 字符时发生的几件奇怪的事情之一。

环境

  • Ubuntu 12.04 通过 SSH 在 Mac OS X 10.8 上运行
  • Python 2.7.3
  • 重击
  • LANG 和 LANGUAGE 都设置为 sv_SE

【问题讨论】:

  • 听起来像是终端的问题。
  • 不是一个 Python 问题; Python 不处理输入法,你的终端可以。而且绝对在您使用 Nano 时不会,在使用该编辑器时不会涉及 Python 代码。
  • 与 test.txt 完全一样的过程。
  • 好的,毕竟这有帮助。结果发现语言环境必须设置为sv_SE.utf8 而不是sv_SEsv_SE.UTF-8
  • 发表您的评论作为答案,以便有同样问题的人更容易看到它。

标签: python bash unicode ssh character-encoding


【解决方案1】:

原来必须将语言环境设置为 sv_SE.utf8 而不是 sv_SE 或 sv_SE.UTF-8。如果您来自瑞典以外的其他国家/地区(从统计上来说这似乎是合理的假设),您显然必须为您的语言和位置找到正确的语言环境名称。

然后只需执行此操作即可生成(可选)您的语言环境并进行设置:

locale-gen sv_SE.utf8
locale-update LANG=sv_SE.utf8
reboot

将 LANG 替换为您需要设置的任何其他环境变量。这将创建/修改文件 /etc/default/locale。

【讨论】:

    猜你喜欢
    • 2013-09-02
    • 2016-07-28
    • 2014-12-09
    • 1970-01-01
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    • 1970-01-01
    相关资源
    最近更新 更多