代码之家  ›  专栏  ›  技术社区  ›  spondiirty

带有宽字符(jp或cn)的python input()在Mac终端上无法正常工作

  •  0
  • spondiirty  · 技术社区  · 2 年前

    在终端上写一个小对话框,它应该接受unicode输入。

    输入时,第一次看起来没问题,但如果使用backspace删除字符,则无法完全删除它们。

    复制:

    1. 创建一个py文件 test.py
    2. 在这个文件中写一行 input() ,然后保存
    3. 使用 python test.py
    4. 输入任何日语或汉语句子,例如。 这是一个测试
    5. 然后尝试使用backspace删除,它只能删除句子的一半。

    (第3.8版)

    似乎终端中的delete只删除一个ascii大小,其中每个宽字符取两个。

    但在python控制台中,它没有这个问题。

    知道吗?

    ====

    更新:

    屏幕记录: https://drive.google.com/file/d/1_jXSF9FxJt4U9_4O-faMyoWPp9mQPdrH/view?usp=sharing

    在Mac+Bash、Mac+Zsh、Ubuntu+Bash、Ubuntu+Konsole上发现了同样的问题

    Windows Dos工作正常。

    0 回复  |  直到 2 年前