Python错误:输入promp中为空字节

2024-05-12 09:49:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我找到了

input('some\x00 text')

将提示输入some,而不是some text。在

从源代码中,我发现这个函数使用C函数PyOS_Readline,它忽略了提示符中空字节之后的所有内容。在

来自PyOS_StdioReadline(FILE *sys_stdin, FILE *sys_stdout, const char *prompt)

^{pr2}$

https://github.com/python/cpython/blob/3.6/Python/bltinmodule.c#L1989https://github.com/python/cpython/blob/3.6/Parser/myreadline.c#L251

这是一个错误还是有原因的?在

问题:http://bugs.python.org/issue30431


Tags: 函数texthttpsgithubcominputreadline源代码
1条回答
网友
1楼 · 发布于 2024-05-12 09:49:24

函数签名几乎需要一个以NUL结尾的C-string,PyOS_StdioReadline(FILE *sys_stdin, FILE *sys_stdout, const char *prompt),因此在不更改API和破坏与GNU readline的互操作性的情况下,没有什么可以做的了。在

相关问题 更多 >