首页 > 解决方案 > 创建一个包含随机数的列表。询问用户并检查数字是否在所需范围内

问题描述

list = []
import random
for i in range(20):
    list.append(random.randrange(1,9))
print("List = ", list)

number = int(input("Tell me a number between 1 and 9: "))

if number > 0 and number < 10 and number in list:
    print("The number",number,"is in the desired range", list.count(number), "times")
    for number in list:
        print("Indexes of", number, "=", list.index(number))


    ##########################

    # I can´t solve this last part correctly

标签: pythonlist

解决方案


您可以使用 enumerate 获取列表中项目的索引和值,并检查该值是否为数字,然后打印索引

from random import randrange

numbers = [randrange(1, 9) for _ in range(20)]
print("numbers = ", numbers)

number = int(input("Tell me a number between 1 and 9: "))

if 0 < number < 10 and number in numbers:
    print("The number", number, "is in the desired range", numbers.count(number), "times")
    for index, val in enumerate(numbers):
        if val == number:
            print("Indexes of", number, "=", index)

输出

numbers =  [3, 6, 3, 3, 5, 8, 3, 2, 4, 4, 3, 5, 7, 6, 2, 1, 2, 4, 6, 8]
Tell me a number between 1 and 9: 4
The number 4 is in the desired range 3 times
Indexes of 4 = 8
Indexes of 4 = 9
Indexes of 4 = 17

推荐阅读