这其实是我一年前刚开始学习Python时的一个疑问。它是以下内容:我如何调用 input
函数并让用户在不同于 prompt
结尾的某个时间输入他们的条目?
澄清一下,假设我有字符串
'Enter file size: MB'
当被调用时,我希望像这样插入文本:
Enter file size: 62 MB
是否可以像下面这样在函数调用中重新创建此行为?
input('Enter file size: {} MB')
# where Python would interpret
# the {} as the position to input text
最佳答案
这适用于 Windows 和 Linux:
import sys
print(" MB\rEnter file size: ", end = "")
file_size = sys.stdin.readline()[:-1]
在 Linux(不是 Windows)上,您还可以使用 input("MB\rEnter file size: ")
。
这里有一个函数让它更容易使用:
import sys
def input_multipart(prefix, gap_length, suffix):
print(" " * (len(prefix) + gap_length) + suffix + "\r" + prefix, end = "")
return sys.stdin.readline()[:-1]
用法:
file_size = input_multipart("Enter file size: ", 3, "MB")
输出:
Enter file size: MB
关于python - 在字符串中的自定义位置键入文本的 input() 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52236035/