Змінні
Змінні призначені для зберігання даних. Назва змінної в Python повинна починатися з алфавітного символу або символу підкреслення і може містити алфавітно-цифрові символи і знак підкреслення. Крім того, назва змінної не повинна співпадати з назвою ключових слів мови Python. Ключових слів не так багато, їх легко запам’ятати:
False await else import pass
None break except in raise
True class finally is return
and continue for lambda try
as def from nonlocal while
assert del global not with
async elif if or yield
Наприклад, створимо таку змінну:
name = "Tom"
Тут визначено змінну name, яка зберігає рядок “Tom”. У Python застосовується два типи найменування змінних: camel case і underscore notation. Camel case означає, що кожне нове підсліво в найменуванні змінної починається з великої літери. Наприклад:
userName = "Tom"
Underscore notation передбачає, що підслова в найменуванні змінної розділяються знаком підкреслення. Наприклад:
user_name = "Tom"
Також необхідно враховувати реєстрозалежність, тому змінні name і Name будуть представляти різні об’єкти.
#Дві різні змінні
name = Tom
Name = Tom
Визначивши змінну, ми можемо використовувати її в програмі. Наприклад, спробувати вивести її вміст на консоль за допомогою вбудованої функції print:
name = Tom #Визначення перемінної name
print(name) #Виведення значення перемінної name на консоль
Наприклад, визначення та застосування змінної в середовищі PyCharm:
Відмінною рисою змінної є те, що ми можемо змінювати її значення упродовж роботи програми:
name = "Tom" # змінна name рівна значенню "Tom"
print(name) # виводить: Tom
name = "Bob" # змінюємо значення змінної на "Bob"
print(name) # виводить: Bob
Типи даних
Змінна зберігає дані одного з типів даних. У Python існує безліч різних типів даних. В даному випадку розглянемо лише базові типи: bool, int, float, complex і str.
Логічні значення
Тип bool репрезентує два логічних значення: True (вірно, істина) чи False (невірно, брехня). Значення True слугує для того, щоб показати, що щось істинне. Значення False, навпаки, показує, що щось невірно. Приклад змінних такого типу:
isMarried = false
print(isMarried) #False
isAlive = true
print(isAlive) #True
Цілі числа
Тип int є цілим числом, наприклад, 1, 4, 8, 50. Приклад:
age = 21
print("Вік" : age) # Вік: 21
count = 15
print("Кількість", count) # Кількість: 15
За замовчуванням стандартні числа розцінюються як числа у десятковій системі. Але Python також підтримує числа у двійковій, вісімковій та шістнадцятковій системах. Для вказівки на те, що число належить до двійкової системи, перед числом ставиться префікс 0b:
a = 0b11
b = 0b1011
c = 0b100001
print(a) # 3 в десятковій системі
print(b) # 11 в десятковій системі
print(c) # 33 в десятковій системі
Для вказівки на те, що число належить до вісімкової системи, перед числом ставиться префікс 0o:
a = 0o7
b = 0o11
c = 0o17
print(a) # 7 в десятковій системі
print(b) # 9 в десятковій системі
print(c) # 15 в десятковій системі
Для вказівки на те, що число належить до шістнадцяткової системи, перед числом ставиться префікс 0x:
a = 0x0A
b = 0xFF
c = 0xA1
print(a) # 10 в десятковій системі
print(b) # 255 в десятковій системі
print(c) # 161 в десятковій системі
Варто зазначити, що в якій би системі ми не передавали число в функцію print для виведення на консоль, воно за замовчуванням буде виводитися в десятковій системі.
Числа з плаваючою крапкою
Тип float є числом з плаваючою крапкою, наприклад, 1.2 або 34.76. У якості роздільника цілої та дробової частин використовується крапка.
height = 1.68
pi = 3.14
weight = 68.
print(height) # 1.68
print(pi) # 3.14
print(weight) # 68.0
Число з плаваючою точкою можна визначати в експоненційному записі:
x = 3.9e3
print(x) # 3900.0
x = 3.9e-3
print(x) # 0.0039
Число float може мати лише 18 значущих символів. Так, у цьому випадку використовуються лише два символи – 3.9. І якщо число занадто велике чи занадто мале, ми можемо записувати число у подібній нотації, використовуючи експоненту. Число після експоненти вказує ступінь числа 10, на яке потрібно помножити основне число - 3.9.
Комплексні числа
Тип complex представляє комплексні числа у форматі речова_частина+уявна_частинаj - після уявної частини вказується суфікс j
complexNumber = 1+2j
print(complexNumber) # (1+2j)
Рядки
Тип str представляє рядки. Рядок є послідовністю символів, що укладена в одинарні або подвійні лапки, наприклад “hello” та ‘hello’. У Python 3.x рядки є набором символів у кодуванні Unicode
message = "Hello World!"
print(message) # Hello World!
name = 'Tom'
print(name) # Tom
При цьому якщо рядок має багато символів, його можна розбити на частини і розмістити їх на різних рядках коду. У цьому випадку весь рядок береться у круглі дужки, а його окремі частини – у лапки:
text = ("Laudate omnes gentes laudate"
"Magnificat in secula")
print(text)
Якщо ми хочемо визначити багаторядковий текст, такий текст береться у потрійні подвійні чи одинарні лапки:
'''
Цей коментар
'''
text = '''Laudate ones gentes laudate
Magnificat insecula
Et anima mea laudate
Magnificat in secula
'''
print(text)
При використанні потрійних одинарних лапок не варто плутати їх із коментарями: якщо текст у потрійних одинарних лапках присвоюється змінною, то це рядок, а не коментар.
Керуючі послідовності у рядку
Рядок може містити низку спеціальних символів - послідовностей, що керують. Деякі з них:
: дозволяє додати внутрішні рядки слеш
': дозволяє додати всередину рядка одинарну лапку
": дозволяє додати всередину рядка подвійну лапку
\n: дозволяє здійснити перехід на новий рядок
\t: додає табуляцію (4 відступи)
Застосуємо кілька послідовностей:
text = "Message:\n\"Hello World\""
print(text)
Консольне виведення програми:
Message:
"Hello World"
Хоча подібні послідовності можуть нам допомогти в деяких справах, наприклад, помістити в рядок лапку, зробити табуляцію, перенесення на інший рядок. Але вони також можуть заважати. Наприклад:
path = "C:\python\name.txt
print(path)
Тут змінна path містить певний шлях до файлу. Однак усередині рядка зустрічаються символи "\n", які будуть інтерпретовані як послідовність, що керує. Так, ми отримаємо наступний консольний висновок:
C:\python
ame.txt
Щоб уникнути подібної ситуації, перед рядком ставиться символ r
path = r"C:\python\name.txt"
print(path)
Вставка значення в рядок
Python дозволяє вбудовувати в рядок значення інших змінних. Для цього всередині рядка змінні розміщуються у фігурних дужках {}, а перед усім рядком ставиться символ f:
userName = "Tom"
userAge = 37
user = f"name: {userName} age {userAge}"
print(user) # name: Tom age: 37
У цьому випадку на місце {userName} вставлятиметься змінна userName. Аналогічно замість {userAge} буде вставлятися значення змінної userAge.
Динамічна типізація
Python є мовою з динамічною типізацією. А це означає, що змінна не прив’язана жорстко до певного типу. Тип змінної визначається виходячи із значення, яке їй присвоюється. Так, при присвоєнні рядка в подвійних чи одинарних лапках змінна має тип str. Під час присвоєння цілого числа Python автоматично визначає тип змінної як int. Щоб визначити змінну як об’єкт float, їй надається дробове число, в якому роздільником цілої та дробової частини є крапка.
При цьому в процесі роботи програми ми можемо змінити тип змінної, надавши їй значення іншого типу:
userId = "abc" # тип str
print(useId)
userId = 234 # тип int
print(userId)
За допомогою вбудованої функції type() динамічно можна дізнатися про поточний тип змінної:
userId = "abc" # тип str
print(type(userId)) # <class 'str'>
userId = 234 # тип int
print(type(userId)) # <class 'int'>
Comments