gpt4 book ai didi

python - 如何将列表和用户号码传递给函数并让它显示列表中大于用户号码的所有数字?

转载 作者:太空宇宙 更新时间:2023-11-04 02:40:35 24 4
gpt4 key购买 nike

我需要将列表和用户号码传递给一个函数,并让它显示列表中大于用户号码的所有号码。这是我所得到的并且被卡住了。感谢您提供任何提示。

import random

def randnum():
random_num = [random.randrange(1,101,1) for _ in range (20)]
random_num.sort()
return random_num

def usernum():
try:
user_num = int(input("Please enter a number 1 through 100: "))
if user_num > 100 or user_num < 1:
print("Please try again.")
usernum()
except ValueError:
user_num = print("Error. Please try to use integers while entering a number 1-100")
usernum()
return user_num

def main():

最佳答案

我认为您缺少一些代码,但您的功能可能是这样的:

def getHigherNumbers(userNumber, listNumbers):
return [x for x in listNumbers if x > userNumber]

你的 usernum() 也有一个错误:

当出现错误时,您应该使用 return usernum() 而不是仅仅使用 usernum(),因为会出现递归。

要在评论中回答您的问题,您的代码如下所示:

import random

def randnum():
random_num = [random.randrange(1,101,1) for _ in range (20)]
random_num.sort()
return random_num

def usernum():
try:
user_num = int(input("Please enter a number 1 through 100: "))
if user_num > 100 or user_num < 1:
print("Please try again.")
return usernum()
except ValueError:
print("Error. Please try to use integers while entering a number 1-100")
return usernum()
return user_num

def getHigherNumbers(user_num, random_num):
return [x for x in random_num if x > user_num]

def main():
random_num = randnum()
print('random nums : %s' % random_num)
user_num = usernum()
print('user num : %s' % user_num)
greater_nums = getHigherNumbers(user_num, random_num)
print('greeter numbers : %s' % greater_nums)

if __name__ == '__main__':
main()


# random nums : [1, 4, 11, 14, 18, 24, 27, 29, 31, 37, 37, 41, 45, 59, 59, 66, 83, 87, 90, 99]
# Please enter a number 1 through 100: 12
# user num : 12
# greeter numbers : [14, 18, 24, 27, 29, 31, 37, 37, 41, 45, 59, 59, 66, 83, 87, 90, 99]

关于python - 如何将列表和用户号码传递给函数并让它显示列表中大于用户号码的所有数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46657868/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com