Python Функциональный вопрос для начинающих - PullRequest
0 голосов
/ 19 февраля 2020

Я готовлюсь к буткемпу Data Science и ничего не знаю о кодировании. Я застрял в этой лаборатории, сейчас занимаюсь.

поэтому у меня есть этот список:

travel_destinations = ['argentina', 'mexico', 'italy', 'finland', 'canada', 'croatia']

Мне нужно написать функцию с именем number_of_destination, которая возвращает количество пунктов назначения в списке travel_destitions.

Вот мой код:

def number_of_destinations(travel_destinations):
    x = len(travel_destinations)
    print (x)

, который возвращает:

<function __main__.number_of_destinations(travel_destinations)>

Я пробовал так много разных подходов, а python просто продолжает выплевывать "Да, это функция "в основном. Может кто-нибудь помочь мне понять, что я здесь делаю неправильно?

Ответы [ 5 ]

0 голосов
/ 31 марта 2020

Вы также можете передать аргумент по умолчанию в функции.

travel_destinations = ['argentina', 'mexico', 'italy', 'finland', 'canada', 'croatia']
def number_of_destinations(destinations=travel_destinations):
    return len(travel_destinations)
print(number_of_destinations())
0 голосов
/ 20 февраля 2020

Чтобы вызвать функцию, необходимо добавить скобки к ее имени (и некоторые параметры в скобках, если функция принимает параметры). В противном случае, как вы видели, Python просто дает вам знать, что вы ввели имя функции.

def my_function():
    return "hello"

>>> my_function
<function __main__.my_function()>
>>> my_function()
'hello'

Даже если ваш загрузочный лагерь предположительно не требует знаний в области кодирования, вам, вероятно, следует попытаться проработать примеры из учебника Python .

0 голосов
/ 19 февраля 2020

Похоже, вы не передаете данные в функцию.

def number_of_destinations(destinations): 
    x = len(travel_destinations) 
    print (x)
    return x

travel_destinations = ['argentina', 'mexico', 'italy', 'finland', 'canada', 'croatia']
destinations_length = number_of_destinations(travel_destinations)
0 голосов
/ 19 февраля 2020

Вы можете попробовать:

def number_of_destinations(destinations):
    return len(travel_destinations)

travel_destinations = ['argentina', 'mexico', 'italy', 'finland', 'canada', 'croatia']

print(number_of_destinations(travel_destinations))
0 голосов
/ 19 февраля 2020

Ваша функция ничего не возвращает, потому что вам не хватает оператора return. Функция печати выводится на терминал, но не возвращается, поэтому вам необходимо заменить ее.

def number_of_destinations(travel_destinations):
    x = len(travel_destinations)
    return x
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...