编程语言
首页 > 编程语言> > 在Python中,究竟是一串字符串? (或者Glib bug?)

在Python中,究竟是一串字符串? (或者Glib bug?)

作者:互联网

我知道这个问题可能看起来很愚蠢,但我真的无法弄明白.虽然一系列字符串是一个字符串列表,但我很天真.但是,这失败了:

(pid, stdin, stdout, stderr) = glib.spawn_async(
    argv=["foo", "bar"],
    envp=None,
    flags=glib.SPAWN_SEARCH_PATH + glib.SPAWN_CHILD_INHERITS_STDIN,
    standard_input=True,
    standard_output=True,
    standard_error=True)

失败,出现此错误:

TypeError: glib.spawn_async: first argument must be a sequence of strings

我尝试了一个元组,它没有给出更好的结果.

如果不是列表,什么是字符串序列?我虽然关于可能的Python-Glib错误,但我不相信这样的错误确实存在.我在网上发现了类似的消息,但我不知道这是错误,这是一个错误,还是这个错误的发生.

– 编辑 –

使用这个更短的样本,结尾相同:

(pid, stdin, stdout, stderr) = glib.spawn_async(argv=["foo", "bar"])

根据海报的要求,这里有完整的描述:

Traceback (most recent call last):
  File "<...>/test.py", line 92, in <module>
    run()
  File "<...>/test.py", line 62, in run
    standard_error=True)
TypeError: glib.spawn_async: first argument must be a sequence of strings

解决方法:

总结对该问题的评论:

>字符串不应该是unicode对象.如果您有Python 3或从__future__导入unicode_literals,请通过b“foo”语法创建字节文字.
> envp论证似乎与其文档不同.不要提供无.如果您不打算使用它,请不要提供该关键字/位置.

标签:python,python-2-7,glib
来源: https://codeday.me/bug/20190708/1406117.html