我试图在Python 3.5中学习curses库的一些非常基本的用法。
我遇到以下问题:检索字符串" 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)
谢谢
答案 0 :(得分:0)
使用原始行编辑功能从用户读取一个bytes对象。
因此,此API返回一个bytes
对象,该对象代表原始数据。您可以使用a.decode()
将其转换为文本(默认情况下它将采用UTF-8编码)。
文献: