Информационни технологии · 9 клас · урок 1 от 3

Модули, пакети и библиотеки

Урокът обяснява как се организира кодът в Python. Модулът е отделен файл .py с функции, променливи и класове, пакетът е папка с няколко модула, а библиотеката е събрание от готов код за многократна употреба. Python има богата стандартна библиотека (math, random, turtle), а външни пакети като pandas и matplotlib се инсталират отделно.

Работен лист за печат

Какво да запомним

  • Модул: файл с разширение .py; името на модула е името на файла без .py.
  • Пакет: папка, която групира няколко модула.
  • Стандартната библиотека идва с Python и не изисква инсталиране.
  • Външните пакети (pandas, matplotlib, requests) се инсталират отделно.
  • Кодът под if __name__ == "__main__": се изпълнява само при директно стартиране.

Пример

Пример: файлът helpers.py е модулът helpers; след import helpers функцията му се извиква с helpers.greet().

Проверете се: 20 въпроса

Натиснете въпроса, за да видите верния отговор и обяснението.

  1. Какво е модул в Python?
    • Отделен файл с код (.py), който може да се използва в други програми
    • Вид цикъл
    • Грешка при изпълнение
    • Променлива с текстова стойност

    Отговор: Отделен файл с код (.py), който може да се използва в други програми

    Модулът е файл с функции, класове и променливи, който се внася с import.

  2. Какво е разширението на файл с модул на Python?
    • .exe
    • .py
    • .txt
    • .docx

    Отговор: .py

    Модулите на Python са обикновени файлове с програмен код с разширение .py.

  3. Кое е основното предимство на разделянето на програмата на модули?
    • Програмата става по-бавна
    • Кодът не може да се чете
    • Кодът се организира и използва повторно
    • Не са нужни функции

    Отговор: Кодът се организира и използва повторно

    Модулите групират свързан код, който може да се ползва в различни програми, без да се пише отново.

  4. Имате файл helpers.py с функция greet(). Как я извиквате в друга програма в същата папка след import helpers?
    • greet.helpers()
    • import greet()
    • helpers->greet()
    • helpers.greet()

    Отговор: helpers.greet()

    След import helpers функциите на модула се достъпват с името на модула и точка.

  5. Каква е стойността на __name__ в модул, който се изпълнява директно, а не се внася?
    • "__main__"
    • Името на файла
    • None
    • "module"

    Отговор: "__main__"

    При директно изпълнение __name__ е "__main__"; при внасяне е името на модула. Затова се пише if __name__ == "__main__":.

  6. Какво съдържа обикновено един модул?
    • Функции, променливи и класове
    • Само снимки
    • Само коментари
    • Само звук

    Отговор: Функции, променливи и класове

    Модулът съдържа код: функции, класове и променливи, които могат да се използват.

  7. Как се нарича модулът, който е във файла colors.py?
    • colors.py
    • colors
    • py.colors
    • module_colors

    Отговор: colors

    Името на модула е името на файла без разширението .py: import colors.

  8. Коя вградена функция показва имената, достъпни в модула math?
    • list(math)
    • show(math)
    • dir(math)
    • names(math)

    Отговор: dir(math)

    dir() връща списък с имената (функции, константи) в модула.

  9. Защо в модул се пише код под if __name__ == "__main__":?
    • За да работи по-бързо
    • За да скрие кода от потребителя
    • За да се изпълни при внасяне
    • За да се изпълнява само при директно стартиране, а не при import

    Отговор: За да се изпълнява само при директно стартиране, а не при import

    Така модулът може да има тестов или главен код, който не се изпълнява при внасянето му.

  10. Колко пъти се изпълнява кодът на модул, ако той се внася с import два пъти в една програма?
    • Веднъж, защото вторият import използва вече заредения модул
    • Два пъти
    • Нито веднъж
    • Зависи от размера на файла

    Отговор: Веднъж, защото вторият import използва вече заредения модул

    Python пази заредените модули (sys.modules) и при повторен import не ги изпълнява отново.

  11. Какво е библиотека в програмирането?
    • Папка със снимки
    • Събрание от готов код за многократна употреба
    • Списък с грешки
    • Вид текстов редактор

    Отговор: Събрание от готов код за многократна употреба

    Библиотеката съдържа готови функции и модули, които програмистът използва, вместо да ги пише сам.

  12. Какво е пакет в Python?
    • Един ред код
    • Компресиран архив със снимки
    • Папка, която групира няколко модула
    • Тип данни за числа

    Отговор: Папка, която групира няколко модула

    Пакетът е папка с модули (традиционно с файл __init__.py), която се внася като едно цяло.

  13. Кой модул е част от стандартната библиотека на Python и НЕ изисква инсталиране?
    • numpy
    • pandas
    • requests
    • math

    Отговор: math

    math идва заедно с Python, а numpy, pandas и requests се инсталират допълнително.

  14. Коя библиотека се използва най-често за построяване на графики в Python?
    • matplotlib
    • turtle.math
    • random
    • os

    Отговор: matplotlib

    matplotlib (модулът pyplot) чертае линейни, стълбовидни и други графики.

  15. Какво означава, че една библиотека е с отворен код?
    • Може да се използва само безплатно в училище
    • Изходният ѝ код е публично достъпен при условията на лиценз
    • Не съдържа грешки
    • Работи само без интернет

    Отговор: Изходният ѝ код е публично достъпен при условията на лиценз

    Кодът е публичен, а лицензът (например MIT) определя как може да се използва, променя и разпространява.

  16. Кой от изброените е външен пакет, който се инсталира отделно?
    • math
    • random
    • pandas
    • datetime

    Отговор: pandas

    pandas не е част от стандартната библиотека и се инсталира с pip.

  17. За какво се използва библиотеката pandas?
    • За обработка и анализ на таблични данни
    • За рисуване с костенурка
    • За звукозапис
    • За писане на имейли

    Отговор: За обработка и анализ на таблични данни

    pandas работи с таблици (DataFrame): четене от CSV и Excel, филтриране, групиране.

  18. Какво е стандартната библиотека на Python?
    • Платен пакет с допълнения
    • Сайт за книги
    • Модулите, които идват заедно с инсталацията на Python
    • Сборник с упражнения

    Отговор: Модулите, които идват заедно с инсталацията на Python

    Стандартната библиотека включва math, random, datetime, os, json и много други модули.

  19. Кой модул от стандартната библиотека чертае с "костенурка" на екрана?
    • turtle
    • pygame
    • numpy
    • flask

    Отговор: turtle

    turtle е стандартен модул за рисуване чрез команди за движение.

  20. Какво е зависимост (dependency) на пакет?
    • Друг пакет, който е нужен, за да работи пакетът
    • Грешка в пакета
    • Лицензът на пакета
    • Размерът на пакета в MB

    Отговор: Друг пакет, който е нужен, за да работи пакетът

    pip инсталира автоматично и зависимостите, които пакетът изисква.