繁体   English   中英

在不输入新输入的情况下调用 Python 函数

[英]Calling a Python Function Without Entering a New Input

我正在编写一个程序,它接受一个输入并将其转换为一个整数列表,然后输出列表中的最小和最大数字。 当我调用将输入转换为列表的函数时,它会要求一个新的输入。 如何解决此问题以便存储原始输入?

def getList():
    user_input = input()
    newlist = user_input.split()

    for index in range(len(newlist)):
        newlist[index] = int(newlist[index])
    return newlist

def listMin(aList):
    alist = getList()
    small = alist[0]
    for num in alist:
        if num < small:
            small = num
    return small

def listMax(aList):
    alist = getList()
    large = alist[0]
    for num in alist:
        if num > large:
            large = num
    return large

### main program ###

myList = getList()
print(myList)
print(listMin(myList))
print(listMax(myList))

当它运行时,它要求为 listMin 和 listMax 提供一个新的输入。

你应该使用aList你已经作为参数传递到函数,没有要求getList()一次。 只需删除不必要地调用getList()的行:

def listMin(aList):
    small = aList[0]
    for num in aList:
        if num < small:
            small = num
    return small

def listMax(aList):
    large = aList[0]
    for num in aList:
        if num > large:
            large = num
    return large

它再次要求您输入,因为当您在listMin函数中时,您将再次调用getList() 通过删除alist = getList()您将摆脱该问题,但您还应该将alist所有变量名称更改为aList或者您应该更改listMin函数中的参数名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM