Основы Python: Переменные и операторы


Введение

Python — один из самых распространенных языков программирования. В этой статье мы рассмотрим основы языка Python, в частности, типы переменных и операторы.

Переменные

Для хранения значений в Python существует ряд типов переменных, которые по-разному хранят значения. Эти переменные можно разделить на два типа: простые и сложные типы данных. Простые типы данных хранят одно значение определенного типа, а сложные типы данных хранят несколько значений различных типов.

Основные переменные (простой тип данных)

Числа хранят числовые значения и могут быть целым числом или плавающей величиной.

a = 1 #integer
b = 3.14 #float
Вход в полноэкранный режим Выход из полноэкранного режима

Строки позволяют хранить слова, фразы и символы в виде серии символов.

name = "John" #strings are stored between two quotation marks
surname = 'Doe' #they can be marked by double or single quotes
Войти в полноэкранный режим Выход из полноэкранного режима

Булевы числа — это двоичное значение, которое может быть либо истинным, либо ложным.

bool1 = True #booleans are noted by capitalizing the first character
bool2 = False
Войти в полноэкранный режим Выйти из полноэкранного режима

Сложные переменные (сложные типы данных)

В Python есть четыре типа сложных переменных: списки, кортежи, множества и словари. Каждый из этих типов переменных хранит значения в коллекции, но способ хранения значений различен.

Списки — это коллекция значений, которая хранит значения в порядке 0-индексации. Списки также являются изменяемыми, что позволяет добавлять, удалять или изменять значения.

# Lists are similar to javascript arrays as ordered storage of variables
list_example = ["val1", "val2", "val3"] #lists are noted by square brackets
# Lists can be accessed by index values
print(list_example[0])
# print will print "val1" 
Вход в полноэкранный режим Выход из полноэкранного режима

Кортежи похожи на списки тем, что представляют собой упорядоченную коллекцию значений, но имеют одно ключевое отличие: после создания они не могут быть изменены никаким образом.

tup = ("val1", "val2", "val3") #similar to lists, tuples are noted with parentheses
print(tup[1]) #will print out "val2"
Войти в полноэкранный режим Выход из полноэкранного режима

Наборы отличаются от списков и кортежей тем, что в отличие от них наборы хранят значения в неупорядоченной коллекции, то есть при каждом обращении к набору порядок значений меняется. Наборы также отличаются от списков и кортежей тем, что не допускают дублирования значений внутри себя. Аналогично кортежам, значения в наборе не могут быть изменены, но допускается добавление и удаление значений.

setex = {"val1", "val2", "val3"} #sets are noted by curled braces
print(setex) #will print out "val1", "val2", and "val3" in a random order
Вход в полноэкранный режим Выйти из полноэкранного режима

Словари, в отличие от всех других переменных, хранят значения в виде пар ключ-значение в упорядоченном списке. Подобно множествам, словари не могут иметь дубликатов, но дубликаты относятся только к именам ключей. Как и списки, словари можно изменять путем добавления, удаления или изменения значений.

dictex = {
  "key": "val",
  "key2": 2
}
# Dictionary values are accessed through its keys
print(dixtex["key"]) #prints "val" to console
Вход в полноэкранный режим Выход из полноэкранного режима

Операторы

Операторы — это символы, обозначающие операции, которые необходимо выполнить над значением/переменной. В Python есть несколько различных типов операторов, включая: математические, присваивания, сравнения, логические, тождества и принадлежности.

Математические операторы

Арифметические операторы — это операторы, которые выполняют математические операции над значениями. В Python есть базовые сложение и вычитание, как показано ниже, а также некоторые более сложные.

#Addition and Subtraction
a = 10 + 2 #a will equal 12
b = 10 - 2 #b will equal 8
Вход в полноэкранный режим Выход из полноэкранного режима

Хотя умножение и деление не очень сложны, в Python есть заметное взаимодействие с делением. Когда используется оператор деления, в Python результат будет равен float, несмотря ни на что. Если требуется целое число, необходимо использовать другой оператор.
Кроме того, в Python есть оператор modulo и оператор мощности.

#Multiplication and Division
c = 2 * 3 #c will equal 6
#The normal division operator will result in a float value
d = 1 / 2 #d will equal 0.5
#To get an integer or rounded value, use two division operators
e = 1 // 2 #e will equal 0
#Modulo will return the remainder of a division operation
f = 10 % 3 #f will equal 1
#The power operator multiples a number to the given power
g = 2 ** 3 #g will equal 8 or 2 to the third power 
Вход в полноэкранный режим Выход из полноэкранного режима

Операторы присваивания

Операторы присваивания позволяют переменным знать, что нужно принять значение, и в некоторых случаях добавляют случаи, когда нужно принять значение. Основным оператором присваивания является знак =, который включают в себя все остальные операторы присваивания.

a = 1 #the = sign assigns the value to the variable
a += 2 #equivalent of a = a + 2, which results in 3
b = 3
b -= 2 #equivalent of b = b - 2, which results in 1
c = 2
c *= 3 #equivalent of c = c * 2, which results in 6
d = 3
d /= 4 #equivalent of d = d / 4, which results in 0.75
e = 3
e //= 4 #equivalent of e = e // 4, which results in 0
f = 2
f **= 3 #equivalent of f = f ** 3, which results in 8
Вход в полноэкранный режим Выход из полноэкранного режима

Операторы сравнения (булевы проверки)

Операторы сравнения, как следует из названия, выполняют сравнение между двумя значениями или переменными и возвращают булево значение.

a= 2
b = 4
#equals operator checks if two values are equal
comp1 = a == b #results in false
#not equal operator checks if two values are not equal
comp2 = a != b #results in true
#greater than operator checks if first value is greater than the second
c = 3
d = 3
comp3 = c > d #results in false
comp4 = c >= d #results in true, checks if greater or equal to value
#less than operator checks if first value is less than the second
comp5 = a < b #results in true
comp6 = c <= a #results in false, checks if less or equal to value
Вход в полноэкранный режим Выход из полноэкранного режима

Логические операторы

Логические операторы также возвращают булеву величину, но они принимают булевы или операции, результатом которых являются булевы, что позволяет проверить несколько сравнений.

#The and operator checks if both conditions are true
cond1 = 1 < 2 and 1 < 5 #results in true
cond2 = 2 < 2 and 2 < 5 #results in false as one condition is false
#The or operator checks if at least one condition is true
cond3 = 1 < 2 or 1 < 5 #results in true since both conditions are true
cond4 = 2 < 2 or 2 < 5 #results in true since one condition is true
cond 5 = 5 < 2 or 5 < 5 #results in false as both conditions are false
#The not operator inverts the result, making true false and vice versa
cond6 = not(1 < 2) #results in false, as 1 < 2 is true and not inverts it
Вход в полноэкранный режим Выход из полноэкранного режима

Операторы тождества

Операторы тождества используются при сравнении сложных переменных, в частности, если две переменные имеют одну и ту же ссылку.

var1 = [1, 2, 3]
var2 = [1, 2, 3]
var3 = var1
#The is operator checks if two variables possess the same reference
comp1 = var1 is var2 #results in false, as both refer to different lists even though they have the same values
comp2 = var1 is var3 #results in true, as both refer to the same list reference
#The is not operator  checks if two variables do not possess the same list reference
comp3 = var1 is not var3 #results in false, as both refer to the same list reference
comp4 = var1 is not var2 #results in true, as both refer to different list references
Войти в полноэкранный режим Выйти из полноэкранного режима

Операторы принадлежности

Операторы принадлежности используются для проверки того, содержится ли значение в коллекции.

setex = {1, 2, 3}
#The in operator checks if a value is contained inside a collection
comp1 = 2 in setex #results in true as 2 is contained in setex
#The not in operator checks if a value is not contained inside a collection
comp 2 = 3 not in setex #results in false as 3 is contained in setex
Войти в полноэкранный режим Выход из полноэкранного режима

Закрытие

В заключение хочу сказать, что Python содержит множество различных способов хранения значений и несколько операторов, которые могут присваивать и сравнивать их.

Полезные источники

W3schools

Оцените статью
devanswers.ru
Добавить комментарий