gpt4 book ai didi

Windows 上的 Python 3 : extend stdin. readline() 行缓冲区大小

转载 作者:行者123 更新时间:2023-12-05 06:02:12 24 4
gpt4 key购买 nike

在 Windows 上,交互式 Python sys.stdin.readline() 将 Ctrl+V 粘贴截断为 512 个字符。

如何延长此限制?我需要大量的浆料来制作原型(prototype)。

尝试了 fdopen() 技巧,但没有用。

在 macOS 上缓冲区似乎是 1024。

UPD: 看起来缓冲区大小是 compile-time constant .

在C语言中,可以用setvbuf()来扩展buffer,但是这个函数没有被Python封装,很遗憾。我想我会尝试使用 ctypesMSVCRT.DLL 中调用它。

最佳答案

(在 Mac 操作系统上)将 import readline 添加到您的 python 脚本将扩展 input()

的限制

来自 https://docs.python.org/3/library/readline.html

The readline module defines a number of functions to facilitate completion and reading/writing of history files from the Python interpreter. This module can be used directly, or via the rlcompleter module, which supports completion of Python identifiers at the interactive prompt. Settings made using this module affect the behaviour of both the interpreter’s interactive prompt and the prompts offered by the built-in input() function.

例子

import readline

data = input()

print(data)

关于Windows 上的 Python 3 : extend stdin. readline() 行缓冲区大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66992674/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com