Несколько аргументов в функции Python - PullRequest
0 голосов
/ 27 мая 2019

Код, который у меня есть, работает для одного аргумента.Но я пытаюсь пройти через несколько аргументов одновременно.

def day(x):
    mydict = { 2.4:104.2 , 5:109.2, 5.5:112.2, 2.1:110.2, 5.7:114}
    keylist=sorted(mydict.keys())

    if x in mydict:
        return mydict[x]

    elif x> max(mydict.keys()):
        return mydict[max(mydict.keys())]

    elif x< min(mydict.keys()):
        return 'NaN'

    else:
        y=len(keylist)-1
        for i in keylist:
            if x>keylist[y]:
                return mydict[keylist[y]]
            else:
                y=y-1

Код, который я пытался использовать для нескольких аргументов, использовал

def day(*z):

for x in z:
 #rest of code
continue

, но когда это только казалось, что он возвращает только один ответ, который является первым значением из списка z.Куда я иду не так?

Спасибо

1 Ответ

0 голосов
/ 27 мая 2019

Вы хотите вернуть одно значение для каждого элемента на итерируемом?Попробуйте использовать yield вместо return.

...