我需要知道是否可以检查某个值是否位于列表中。以及如何完成。

基本上,该程序需要允许用户在列表内输入一系列数字,直到用户指定完成为止。他们将通过输入数字序列-123来执行此操作。

这是我到目前为止的代码,需要一段时间的构造。任何援助将不胜感激。

enterNum = input()
userList = []
while enterNum != -123:
    for i in range(enterNum):
        userList.append(float(input()))


我觉得我缺少一些简单的东西。

最佳答案

您几乎拥有它:

userList = []
while True:
    enterNum = input()
    if enterNum != -123:
        userList.append(enterNum)
    else:
        break


要么:

userList = []
while enterNum != -123:
    enterNum = input()
    userList.append(enterNum)


但您最终会在列表中得到-123

使用错误捕获,由于您无法依靠用户,因此我将执行以下操作:

userList = []
while True:
    try:
        enteredNum = float(input())
        if enteredNum == -123:
            break
        userList.append(enteredNum)
    except ValueError:
        print("Invalid number")

09-28 00:52