Основи Python

Як було вказано на попередній сторінці, у Python немає необхідності мати деяку “головну функцію”, або “точку входу”. Також, Ви вже дізналися, що за допомогою функції print() можна виводити значення у консоль. Наразі вважаймо, що * перед назвою аргументу вказує на довільну їх кількість, приблизно як ... у Java. Отже, для того, щоб вивести одразку декілька значень через пропуски, можна написати їх через кому:

print("Привіт", 'світ!')

Як видно, у Пайтоні рядки можна писати як у подвійних, так і у одинарних лапках. Символів як окремого типу даних у Python не існує — замість нього використовують рядки довжиною 1. Також рядки можна поєднувати і знаком +, як це робили у Java.

Щодо введення, існує зручна функція input(), яка повертає введений рядок. Також ця функція може приймати аргумент, значення якого буде виведене перед запитом. Зауважте, що вона не переводить після виведення аргументу на новий рядок — для цього можна використовувати \n.

name = input()
print("Привіт,", name)
hobby = input("Введіть своє хобі: ")
print("Ваше хобі: " + hobby)

>>> Андрій
Привіт, Андрій
Введіть своє хобі: малювання
Ваше хобі: малювання

Коментарі

У Python існують лише однорядкові коментарі, які починаються знаком #. Однак, замість багаторядкових коментарів можна використовувати “багаторядкові рядки” (multiline strings), що на відміну від звичайних огортаються у """ з обох сторін. Якщо інтерпретатор мови бачить окремий рядок, то він його ігнорує.

# Коментар в один рядок
"""
Багаторядковий
коментар
"""

Типи даних

Тип Назва Опис Приклад
bool Булевий (логічний) True або False False
integer Цілочисельний Звичайне ціле число -2147483647, 83910343
floating point Дійсний Дробове число з подвійною точністю 3.1415926
complex Комплексний Комплексне число 2+3j
string Рядок Будь-який текст "Enchanté!", "Доброго вечора!"
list Список Упорядкована змінна сукупність [2, True, 'meow']
tuple Кортеж Упорядкована незмінна сукупність (2, True)
set Множина Невпорядкована незмінна сукупність {'apple', 4.6}
dictionary Словник Сукупність “ключ-значення” {2: True, 'key': 'value'}

Очевидно, що це далеко не всі, але основні типи даних. Також можна помітити суттєві відмінності з Java. Значення булевого типу пишуть з великих літер, float у Пайтоні є скоріше як double у Java, а замість особливого значення null тут — None. У Java не було базового типу для комплексних чисел, однак це вища математика, тому розглядатись у деталях не буде.

Найбільш схожим на масиви є тип “список”. Суттєвою відмінністю є те, що він може зберігати значення різних типів. Також є ще два схожих типи, кортеж та множина, які відповідають однойменним математичним сукупностям значень. Назва “словник” дійсно відповідає цьому типові даних: можна уявити словник, у якому навпроти кожного слова є його визначення. Таким чином, можна отримати визначення, знаючи лише слово. Детальний опис та приклади застосувань контейнерів будуть в окремому розділі.

Приведення типів

Цікаво, що так як Пайтон — динамічна мова програмування, “справжнього” приведення типів тут навіть немає. Тим не менш, значення деяких базових типів можна перетворювати на відповідники в інших типах. Для цього достатньо використовувати функції, що мають назви цих типів.

int("53")
float(9)
str(True)
list({'the set', 'is now', 'a list'})

Змінні

Змінні у Python створювати дуже просто. Вже на початку цієї сторінки Ви могли їх побачити. Вказувати тип не обов’язково — достатньо написати <назва> = <значення>. Можливо робити навіть “ланцюгове” присвоєння: a = b = 2.

Важливо: у Python присвоєння здійснюється копіюванням посилання на об’єкт. Є декілька типів стратегій обчислення — те, як мова програмування обчислює здачення та передає їх функціям. У Java базові типи передавались за значенням, тобто такий код:

int[] a = {2, 3, 5};
int[] b = a;

копіював повністю масив a у b як новий. У Python навіть масиви (які називають списками) передаються, натомість, за співвикористанням, тому аналогічна дія просто прив’яже масив a до нового імені b — немовби створить посилання на нього. Тому, у випадку зміни масива, він однаково буде змінений як у a, так і у b.

На даному етапі невеличкий фрагмент коду, наведений на початку розділу, має бути зрозумілим. Для практики Ви можете спробувати написати діалог з користувачем. Успіхів у вивченні програмування!


Copyleft 🄯 2020–2024 Михайло Стецюк <yaBobJonez@gmail.com>.
Сайт має ліцензію Creative Commons License.
Дякую рідній школі та вчителям!