首页 文章

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

提问于
浏览
1

我正在尝试创建一个计算销售税的计划 . 我首先询问用户他们用餐的总费用是多少 . 然后,我以下列形式询问他们所在地区的销售税是多少:

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

我希望问题末尾有一个百分号“%”,以便用户将问题视为:

您所在地区的销售税是多少?_%,用户可以在问题和百分号之间输入一个数字(由下划线表示) .

这是我尝试过的:

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

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

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

3 回答

  • 1

    你可以做这样的事情

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

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

    此外,如果您不是非常迫切需要,那么我建议您要求用户以百分比形式输入,而不是在inpur结束时输入 % 标志

  • 0

    我有一个解决方案给你 . 只是一个技巧,即使在搜索了很长时间之后也找不到直接解决方案 . 但有一件事是肯定的,你需要知道输入的长度,否则对于很长的输入, ! 将被覆盖 . 代码如下:

    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)
    
  • 1

    你不能用input()来做到这一点,而不知道输入会有多长 . 您可以要求用户以百分比回答 . 您可以使用ANSI转义码将百分号放在输入的位置之后,但如果您键入直到达到百分号,它将被覆盖 . 如果你确实需要它,那么你可以使用curses来完成整个事情 .

相关问题