繁体   English   中英

如何在Python 3 curses中对.getstr()的输入使用.format()?

[英]How to use .format() on input from .getstr() in Python 3 curses?

我正在尝试学习Python 3.5中curses库的一些非常基本的用法。

我面临以下问题:使用.getstr()检索字符串“ foo” .getstr() ,如果我使用字符串方法.format() ,则输出的是带有前缀b和撇号的字符串: b'foo'而不是只是foo .getstr返回的内容是否不同于普通字符串?

这是怎么回事 如何只打印变量?

以下几行代码显示了该问题:

import curses


def main(scr):
    scr.clear()
    curses.echo()
    scr.addstr(0, 0, "Write...")
    a = scr.getstr(1, 0)
    scr.addstr(
        2, 0, "You wrote...\nWith string.format:"
        "\n{}\nCalling directly the variable:\n".format(a))
    scr.addstr(6, 0, a)
    scr.addstr(8, 0, "Press Return to quit")
    scr.getkey()

curses.wrapper(main)

谢谢

getstr docs

从用户读取一个字节对象,具有原始行编辑功能。

因此,此API返回的bytes对象代表了原始数据。 您可以使用a.decode()将其转换为文本a.decode()默认情况下将采用UTF-8编码)。

文献:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM