Python:如何将打印语句和输入放在同一行上?

时间:2018-09-25 03:19:33

标签: python python-3.x

当用户输入输入时,如何使其与打印语句在同一行

例如下面的代码片段。输出变为:

Enter grade for course 1: A
Enter credits for course 1: 4

现在这就是我得到的:

Enter grade for course 1: 
A
Enter credits for course 1:
4

这是代码段

for i in range(1,coursenumber+1):
    print("Enter grade for course ", i,":", end =""),
    grade=str(input())
    print("Enter credits for course", i,":", end =" ")
    credit=int(input())
    totalgpa+=translate(credit,grade)
    totalcredit+=credit

3 个答案:

答案 0 :(得分:1)

不是先使用print(),而是像这样使用input()

question="Enter grade for course" + str(i)
grade=input(question)

question可以是任何东西,只是不能在input()函数中组合字符串。

答案 1 :(得分:0)

您可以在输入函数中编写问题,例如

for i in range(1,coursenumber+1):
    grade=input(f"Enter grade for course {i}:")
    credit=input(f"Enter credits for course {i}:")
    totalgpa+=translate(credit,grade)
    totalcredit+=credit

然后输入提示出现在问题旁边

答案 2 :(得分:0)

您现在拥有的应该可以工作。如果不是,那是因为您没有使用普通的控制台进行输出。就是说,正如其他答案所建议的那样,您可以通过将提示包含在对num_analysts = len(analysts.keys()) for k,v in analysts.items(): analysts_dict = dict.fromkeys(range(num_analysts), [k,v]) 的调用中,而不是在单独的(old k,v pair)调用中来做得更好。

唯一的麻烦是您需要自己格式化提示,而不是像使用input那样传递单独的参数。幸运的是,字符串格式化并不难。我会做这样的事情:

print
相关问题