Друзья, если вам нужно перепечатать, пожалуйста, указывайте источник:blog.CSDN.net/Генерал сказал, о...
Отказ от ответственности: во время обучения технологии искусственного интеллекта многие студенты задавали мне некоторые вопросы, связанные с Python, поэтому, чтобы дать студентам более обширные знания и лучшее понимание технологии искусственного интеллекта, я попросил своего помощника поделиться этой серией. учебников по python Надеюсь, поможет всем! Поскольку этот учебник по Python написан не мной, он не такой забавный и юмористический, как мое обучение технологии ИИ, и его более скучно изучать; но его знания все еще на месте, и его также стоит прочитать! Учащиеся, желающие изучить технологию искусственного интеллекта, могут щелкнуть, чтобы перейти кУчебный сайт. PS: Для студентов, которые не понимают эту статью, пожалуйста, сначала прочитайте предыдущую статью, и вам не составит труда учиться понемногу каждый день шаг за шагом!
Многостороннее ветвление в python обычно реализуется комбинацией if, elif и else. Следующее:
>>> x = 'killer rabbit'
>>> if x == 'roger':
... print("how's jessica?")
...elif x == 'bugs':
... print("what's up doc?")
...else:
... print('Run away! Run away!')
...
Run away! Run away!
Если вы использовали такие языки, как C или Pascal, вам может быть интересно, есть ли в Python оператор switch или case, который выбирает действия на основе значений переменных. Однако в Python многостороннее ветвление записывается как последовательность if/elif (как в приведенном выше примере), индексация словаря или поиск в списке. Поскольку словари и списки могут быть созданы во время выполнения, они иногда более гибкие, чем жестко запрограммированная логика.
>>> choice = 'ham'
>>> print({'spam': 1.25, # A dictionary-based 'switch'
... 'ham': 1.99, # Use has_key or get for default
... 'eggs': 0.99,
... 'bacon': 1.10}[choice])
1.99
В первый раз, когда вы видите приведенный выше код, вам может потребоваться время, чтобы подумать об этом: код индексируется в соответствии с выбором ключа словаря, а затем переходит к одному из набора значений, подобно переключателю. на языке С. Приведенный выше код будет выглядеть так с оператором if:
>>> if choice == 'spam':
... print(1.25)
... elif choice == 'ham':
... print(1.99)
... elif choice == 'eggs':
... print(0.99)
... elif choice == 'bacon':
... print(1.10)
... else:
... print('Bad choice')
...
1.99
Приведенное выше предложение else является случаем по умолчанию, то есть предложение else выполняется, когда не совпадает ни один ключ. Если вы реализуете форму словаря, вы можете использовать метод get словаря для реализации предложения по умолчанию. Ниже приведен случай, когда значение по умолчанию обрабатывается методом get.
>>> branch = {'spam': 1.25,
... 'ham': 1.99,
... 'eggs': 0.99}
>>> print(branch.get('spam','Bad choice'))
1.25
>>> print(branch.get('bacon','Bad choice'))
Bad choice
Сложные действия ветвления могут быть записаны с помощью операторов if, а также сложные действия могут быть выполнены в виде словарей. Потому что словарь может содержать функции, представляющие собой более сложные действия ветвления. Такие функции используются как значения словаря, обычно записываются в виде имен функций или лямбда-выражений, и вызываются путем добавления круглых скобок для запуска их действий. Я познакомлю вас с этим знанием позже, просто поймите его сейчас.
Хотя ветвление в стиле словаря полезно в программах, работающих с динамическими данными, написание оператора if — самый простой способ выполнить ветвление. Принцип написания кода таков: если есть сомнения, следуйте принципам простоты и удобочитаемости.