Python:如何使用输入函数在句子中间(fillingblank样式)获得用户输入?

2024-10-04 03:22:30 发布

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

我正在尝试创建一个计算销售税的程序。我首先问用户他们吃饭的总成本是多少。然后,我以下列形式询问他们所在地区的营业税是多少:

y = input('What is the sales tax of your area? ')

我想在问题末尾加个百分号“%”,这样用户就可以看到问题:

你们地区的营业税是多少?_%,用户可以在问题和百分号之间输入一个数字(用下划线表示)。在

这就是我所尝试的:

^{pr2}$

Tags: ofthe用户程序inputyouriswhat
3条回答

在不知道输入时间的情况下,不能使用input()执行此操作。你可以要求用户用百分比回答。您可以使用ANSI转义码将百分号放在输入的位置之后,但是如果您键入百分号,它将被覆盖,直到您到达百分号为止。如果您真的需要,那么您可以使用curses来完成整个过程。在

你可以这样做

x=input("What is the sales tax in your area?    % \x1B[5D")

它首先打印行,然后转义序列\x1B[5D将光标向后移动5个位置。但是第一个答案说的是,如果事先不知道输入的时间是多长,你就不能这么做。如果它更长,它将覆盖百分号。您可以在这里查看more such escape sequence

另外,如果您不太希望这样做,那么我建议您要求用户以百分比形式输入,而不是在inpur的末尾加一个%符号

我有个解决办法。只是个小把戏,找了很久也没找到直接的解决办法。但有一点是肯定的,您需要知道输入的长度,否则对于非常长的输入,!将被覆盖。代码如下:

x = float(input("What is the cost of your meal? "))
y = input("What is the sales tax in your area?  %\rWhat is the sales tax in your area?")

y = float(y)/100
cost = (x+(x*y))

print("The cost of your food is ", cost)

相关问题 更多 >