这实际上是自一年前开始学习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
答案 0 :(得分:3)
这适用于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
答案 1 :(得分:2)