python - python 列表的新手

标签 python arrays list input numbers

这是我当前的代码:

while True:
        try:
            mylist = [0] * 7
            for x in range(7):
                    sales = float(input("Sales for day:"))
                    mylist[x] = sales
                    if  sales < 0:
                        print ("Sorry,invalid. Try again.")
        except:
            print ("Sorry, invalid. Try again.")
        else:
            break

print (mylist)

best = max(sales)
worst = min(sales)

print ("Your best day had", best, "in sales.")
print ("Your worst day had", worst, "in sales.")

当我运行它时,我得到了这个:

Sales for day:-5
Sorry,invalid. Try again.
Sales for day:-6
Sorry,invalid. Try again.
Sales for day:-7
Sorry,invalid. Try again.
Sales for day:-8
Sorry,invalid. Try again.
Sales for day:-9
Sorry,invalid. Try again.
Sales for day:-2
Sorry,invalid. Try again.
Sales for day:-5
Sorry,invalid. Try again.
[-5.0, -6.0, -7.0, -8.0, -9.0, -2.0, -5.0]
Traceback (most recent call last):
  File "C:/Users/Si Hong/Desktop/HuangSiHong_assign9_part.py", line 45, in <module>
    best = max(sales)
TypeError: 'float' object is not iterable

我不太确定如何对其进行编码,以便列表不接受负值,因为我只想要 0 或更大的值。

我不确定如何解决 TypeError 问题,以便在我的代码中打印最小值和最大值

我的最后一个问题是,如果我想找到用户输入的七个输入的平均值,我应该如何从列表中提取值

非常感谢

最佳答案

最好的办法是将数据检查放入 while 循环中。这将继续循环遍历该值,直到满足您的条件 (>0)

此外,这可能会让用户感到困惑,无法弄清楚他们输入的是哪一天的结果。另外,您需要使用最大值/最小值列表,而不是单个值。将它们放在一起,并进行以下更改:

        for x in range(7):
            sales=-1
            while (sales<0):
                sales = float(input("Sales for day {0}".format(x)))
                mylist[x] = sales
                if  sales < 0:
                    print ("Sorry,invalid. Try again.")

然后进行此更改:

best = max(my_list)
worst = min(my_list)

关于python - python 列表的新手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13792781/

相关文章:

python - 如何将自定义列顺序(在分类上)应用于 Pandas 箱线图?

python - 通过 Elixir 使用多个数据库

c# - 如何将有符号字节数组转换为 float ?

c - C 中的结构数组参数

c# - 适合可变深度列表的集合?

Python CSV 阅读器没有任何数据

python - vscode python 格式化 autopep8 禁用 E266

javascript - 从 Javascript 对象排序键

string - 混合(字符和数字)变量的逻辑查询

python - psycopg2安装成功,但无法导入python