Здравствуйте, друзья, сегодня мы суммируем изучение недели.
Краткое изложение недели
- День 5 Мы узнали, что модули – это способ упаковки нашего кода, который усиливает гибкость и использование кода. Модули в основном файлов Python, которые содержат различные функции. Одним из примеров которого является встроенный модуль Math. Математический модуль в Python является очень полезным модулем. Мы можем выполнять различные математические функции с использованием модуля.
- День 6 В этой части мы решили многие вопросы, связанные с математическим модулем, например, армстронг, используют рекурсию в решении энергопотребления и т. Д.
- День 7 Мы видели, как сделать наши собственные модули Python и как их использовать в нашем коде. Мы можем сделать модуль Python, сохраняя файл Python (с расширением
.py
в папке Python Python. Тогда мы можем использовать модули с помощью оператора импорта.
Использование модулей в модулях
Мы можем использовать модуль в другом модуле. Вот образец вопрос-
Создайте модуль с именем модулей для расчета комбинации двух чисел. Этот модуль должен импортировать Moduleb, который содержит факториальную функцию.
- Модульб
def factorial(A): if(A<=0): return 1 else: return A*factorial(A-1)
- Модуль
import ModuleB def comb(n,r): return ModuleB.factorial(n)/(ModuleB.factorial(r)*ModuleB.factorial(n-r))
- главный
import ModuleC print(ModuleC.comb(5,2))
10.0
Что произойдет, если мы попытаемся позвонить в функцию факториала от того, что он главный? Мы не можем сделать это, так как главный не имеет напрямую импорт Moduleb. Следовательно, мы не можем использовать факториал, определенный в B в качестве Modulec.Factorial () или Moduleb.factorial ()
import ModuleC print(ModuleC.comb(5,2)) print(ModuleC.factorial(4))
10.0 Traceback (most recent call last): File "main.py", line 3, inprint(ModuleC.factorial(4)) AttributeError: 'module' object has no attribute 'factorial'
import ModuleC print(ModuleC.comb(5,2)) print(moduleB.factorial(4))
10.0 Traceback (most recent call last): File "main.py", line 4, inprint(moduleB.factorial(4)) NameError: name 'moduleB' is not defined
Для запуска вышеуказанного выше, нам нужно импортировать модуль B.
import ModuleC import ModuleB print(ModuleC.comb(5,2)) print(ModuleB.factorial(4))
10.0 24
- Мы все знаем, что ни я, ни вы никогда не видел друг друга. Обучение в отдаленной среде является трудным, а учение, возможно, еще сложнее. Учение никогда не является односторонним процессом. Я прошу всех, чтобы активно участвовать в этом курсе, либо через комментарии ниже, либо подкидывая на GitHub Учебный-Python Reppo 😃 😃. 😃
Для тех, кто еще не сделал счет в Dev.to, вы можете иметь бесплатный простой регистрацию, используя учетные записи почты или GitHUB. Я бы предложил бы создавать разработчики, чтобы немедленно создать бесплатный аккаунт GitHub. Вам потребуется зарегистрироваться рано или поздно в любом случае
🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥. На следующий день начнется со вторника
Оригинал: “https://dev.to/aatmaj/learning-python-intermediate-course-day-8-summary-of-the-week-and-nested-modules-j3d”