Введение
Добро пожаловать в основы Python! Всем нужно с чего-то начинать, и эта лабораторная работа — идеальное место для старта. Python — это простой в изучении, мощный язык программирования, известный своим элегантным синтаксисом и динамической типизацией, что делает его идеальным языком для написания скриптов и быстрой разработки приложений.
В этой лабораторной работе вы изучите некоторые из наиболее фундаментальных концепций Python. Мы рассмотрим:
- Математические операторы и порядок их приоритета (order of precedence).
- Операторы дополненного присваивания (Augmented assignment operators) для более лаконичного кода.
- Оператор "Морж" (
:=) (Walrus Operator) для присваивания переменных внутри выражений. - Основные типы данных Python.
- Базовые операции со строками, такие как конкатенация и репликация.
Давайте начнем!
Математические операторы
На этом шаге вы узнаете о математических операторах Python и их приоритете. Приоритет операторов определяет порядок выполнения операций в выражении.
Вот общие математические операторы, от наивысшего к наинизшему приоритету:
| Операторы | Операция | Пример |
|---|---|---|
** |
Возведение в степень | 2 ** 3 = 8 |
% |
Остаток от деления (Модуль) | 22 % 8 = 6 |
// |
Целочисленное деление | 22 // 8 = 2 |
/ |
Деление | 22 / 8 = 2.75 |
* |
Умножение | 3 * 3 = 9 |
- |
Вычитание | 5 - 2 = 3 |
+ |
Сложение | 2 + 2 = 4 |
Примечание: Если вы не знакомы с использованием WebIDE (похожего на VS Code), пожалуйста, изучите это в этой лаборатории.
Давайте попрактикуемся в их использовании. Откройте файл main.py в проводнике файлов слева. Удалите все существующее содержимое и добавьте следующий код. Мы будем использовать функцию print(), чтобы увидеть результат каждого выражения.
## Умножение имеет более высокий приоритет, чем сложение
## Поэтому это вычисляется как: 2 + (3 * 6) = 2 + 18 = 20
print(2 + 3 * 6)
## Скобки переопределяют приоритет операторов
## Это вычисляется как: 5 * 6 = 30
print((2 + 3) * 6)
## Возведение в степень
print(2 ** 8)
## Целочисленное деление
print(23 // 7)
## Остаток от деления (Модуль)
print(23 % 7)
## Более сложное выражение
print((5 - 1) * ((7 + 1) / (3 - 1)))
Теперь запустите скрипт, открыв терминал и выполнив следующую команду:
python3 main.py
Вы должны увидеть следующий вывод, где каждый результат находится на новой строке:
20
30
256
3
2
16.0
Операторы присваивания с расширением
На этом шаге вы изучите операторы дополненного присваивания (Augmented assignment operators). Они предоставляют лаконичный способ выполнить операцию над переменной и присвоить новое значение обратно ей же.
Вот таблица этих операторов и их эквивалентов:
| Оператор | Эквивалент |
|---|---|
var += 1 |
var = var + 1 |
var -= 1 |
var = var - 1 |
var *= 1 |
var = var * 1 |
var /= 1 |
var = var / 1 |
var //= 1 |
var = var // 1 |
var %= 1 |
var = var % 1 |
var **= 1 |
var = var ** 1 |
Давайте попрактикуемся в их использовании. Очистите файл main.py и добавьте следующий код, чтобы увидеть, как они работают со строками, числами и списками.
## Дополненное присваивание со строкой
greeting = 'Hello'
greeting += ' world!'
print(greeting)
## Увеличение числа на 1
number = 1
number += 1
print(number)
## Репликация элементов списка
my_list = ['item']
my_list *= 3
print(my_list)
Запустите скрипт из терминала:
python3 main.py
Вывод покажет результаты дополненных присваиваний:
Hello world!
2
['item', 'item', 'item']
Оператор Вальрус (Walrus Operator)
На этом шаге вы узнаете об операторе "Морж" (:=), официально известном как оператор выражения присваивания (Assignment Expression Operator). Этот оператор, представленный в Python 3.8, позволяет присвоить значение переменной как часть более крупного выражения.
Он полезен для упрощения кода, где вам нужно использовать значение сразу после его вычисления.
Давайте посмотрим его в действии. Очистите файл main.py и добавьте следующий код:
## Оператор "морж" присваивает "Hello World!" переменной my_var
## и возвращает значение, которое затем выводится на печать.
print(my_var := "Hello World!")
## Переменная my_var теперь доступна для использования
print(my_var)
## Вы также можете использовать его для повторного присваивания переменной внутри выражения
print(my_var := "Hello")
print(my_var)
Выполните скрипт:
python3 main.py
Вы увидите следующий вывод, демонстрирующий, что переменной было присвоено значение, и это значение было возвращено в том же выражении:
Hello World!
Hello World!
Hello
Hello
Типы данных
На этом шаге мы рассмотрим девять основных встроенных типов данных Python. Понимание типов данных имеет решающее значение, поскольку они определяют, какие значения может хранить переменная и какие операции могут быть над ней выполнены.
| Тип данных | Примеры | Описание |
|---|---|---|
| Числа | ||
int |
-2, 0, 5 |
Целые числа |
float |
-1.25, 0.0, 1.0 |
Числа с десятичной точкой |
complex |
2+3j |
Числа с действительной и мнимой частями |
| Текст | ||
str |
'a', "Hello!" |
Текст и символы |
| Булевы | ||
bool |
True, False |
Значения Истина или Ложь |
| None | ||
NoneType |
None |
Представляет "отсутствие значения" или "ничего" |
| Коллекции | ||
list |
[1, 2, 3] |
Упорядоченные, изменяемые коллекции |
dict |
{'name': 'Alice', 'age': 30} |
Пары ключ-значение |
tuple |
(1, 2, 3) |
Упорядоченные, неизменяемые коллекции |
set |
{1, 2, 3} |
Неупорядоченные коллекции уникальных элементов |
Чтобы увидеть эти типы данных на практике, очистите файл main.py и добавьте следующий код. Мы определим переменные разных типов, а затем выведем их тип с помощью встроенной функции type().
## Числа
age = 25 ## int
price = 19.99 ## float
coordinate = 2 + 3j ## complex
## Текст
name = "Alice" ## str
## Булевы
is_student = True ## bool
## None
result = None ## NoneType
## Коллекции
scores = [85, 92, 78] ## list
person = {'name': 'Bob', 'age': 30} ## dict
coordinates = (10, 20) ## tuple
unique_ids = {1, 2, 3} ## set
print(type(age))
print(type(price))
print(type(name))
print(type(is_student))
print(type(scores))
print(type(person))
print(type(coordinates))
print(type(unique_ids))
Запустите скрипт, чтобы увидеть тип каждой переменной:
python3 main.py
Ваш вывод должен выглядеть следующим образом:
<class 'int'>
<class 'float'>
<class 'str'>
<class 'bool'>
<class 'list'>
<class 'dict'>
<class 'tuple'>
<class 'set'>
Конкатенация и репликация строк
На этом заключительном шаге вы изучите две основные строковые операции: конкатенацию и репликацию.
Конкатенация строк (String concatenation) — это процесс объединения строк. В Python смежные строковые литералы объединяются автоматически.
Репликация строк (String replication) использует оператор * для создания новой строки путем многократного повторения существующей.
Давайте попробуем эти операции. Очистите файл main.py и добавьте следующий код:
## Конкатенация строк: смежные строковые литералы объединяются автоматически.
## Используем print() для отображения результата.
concatenated_string = 'Alice' 'Bob'
print(concatenated_string)
## Репликация строк: повторение строки несколько раз с помощью оператора *.
replicated_string = 'Alice' * 5
print(replicated_string)
Теперь запустите скрипт из терминала:
python3 main.py
Вы увидите результаты двух операций:
AliceBob
AliceAliceAliceAliceAlice
Это демонстрирует, насколько легко вы можете манипулировать строками в Python.
Резюме
Поздравляем с завершением этой лабораторной работы! Вы сделали первые шаги в мир программирования на Python.
В этой лабораторной работе вы изучили несколько фундаментальных концепций:
- Математические операторы (Math Operators): Вы попрактиковались в использовании таких операторов, как
+,*,/и**, и поняли их приоритет. - Операторы присваивания с расширением (Augmented Assignment Operators): Вы узнали о таких сокращениях, как
+=и*=, для написания более лаконичного кода. - Оператор морж (Walrus Operator): Вы познакомились с оператором
:=для присваивания переменных внутри выражений. - Типы данных (Data Types): Вы получили обзор основных типов данных Python, включая числа, строки, булевы значения и коллекции.
- Конкатенация и репликация строк (String Concatenation and Replication): Вы узнали, как объединять и повторять строки.
Эти концепции являются строительными блоками для написания более сложных и мощных программ на Python. Продолжайте практиковаться и исследовать возможности, которые предлагает Python!



