【问题标题】:How to input multiple values in python?如何在python中输入多个值?
【发布时间】:2021-08-29 15:43:02
【问题描述】:

我有以下功能

def score(midterm, final, practice, *assignments, **quiz):
    a = 0.25 * midterm
    b = 0.25 * final
    c = 0.2 * practice
    i=0
    d = 0
    for assignment in assignments:
        d += assignment
        i += 1
    d = d/i
    d = 0.05 * d
    for q in quiz:
        e = 0.25 * quiz[q]

    return a+b+c+d+e

但我有一个问题,我不知道如何输入多个值。如果我使用编码,那么我可以这样写 print(score(77, 65, 88, 75, 81, 80, quiz = 82))

我希望用户输入参数值。对于 'assignments' 参数,它是一个不确定的数字。它可以在关键字参数之前增加 1/2/3/多个值。谁能告诉我怎么做?

【问题讨论】:

  • 看看str.split()...
  • 您希望用户也输入关键字参数吗?那应该是什么样子?如果不是,那么这是 Taking multiple inputs from user in python 的副本。
  • 题外话,但e 在每次迭代时都会重置,这似乎不正确。此外,设置d 确实过于复杂。你可以做d = 0.05 * statistics.mean(assignments)

标签: python function input keyword-argument


【解决方案1】:

它实际上以类似的方式用于输入。您需要将输入拆分为例如空格并将其转换为 int。然后python会将各自的值分配给每个变量:

midterm, final, practice, *assignments = map(int, input('Enter grades: ').split(' '))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-19
    • 2021-04-02
    • 2018-05-02
    • 2015-06-12
    • 2021-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多