Котам почему-то всегда говорят «ты», хотя ни один кот ещё ни с кем не пил брудершафта! @Бегемот
from переулок import Котя
dir(Котя())
Гав = Котя()
Гав.почесать()
Гав.погладить()
Гав.позвать()
Гав.девиз()
Python, как и множество других подобных ему языков, реализует множество типов данных, которые наиболее часто встречаются программисту и наиболее часто им используются при решении задач. К таким типам относятся:
a = 11 # мы присвоили целочисленное значение нашей переменной
b = 5 # ну и вторую для порядка
Над целыми числами можно выполнять множество математических операций
a - b # вычитание
a + b # сложение
a * b # умножение
С делением чуть посложнее, если хотим продолжить работать с целыми числами:
a // b # целочисленное деление
a % b # остаток от целочисленного деления
a ** b # возведение в степень
abs(-10) # взятие модуля
2 ** 10
Числа с плавающей запятой в Python - способ хранения значений вещественных чисел
a = 10 / 2 # выполняем обычное деление
a
Заметьте, что a поменяла свой тип, это одно из свойств Python - переменная может спокойно менять свой тип. Переменным с вещественным типом доступны те же операции
b = 5.2
a - b
a + b
a * b
a / b
a ** 0.5
b // a # ТАК МОЖНО, НО НЕ НУЖНО!!!
round(a ** 0.5, 2) # можем округлять переменную до нужного нам числа знаков после запятой
Чтобы понимать часть происходящих далее вещей, полезно понимать операторы присваиввания.
x = 3
y = 5
z = x + y # создаём новую переменную z и присваиваем ей значение суммы x и y
z
x = 3
y = 5
x = x + y # оператор + создаёт новый объект, равный сумме x и y, а оператор = присваивает новый объект переменной x
x
x = 3
y = 5
x += y # оператор += обновляет переменную x, добавляя к её значению значение y. Эквивалент: x = x + y
x
Другие операторы присваивания:
x, y, z = 3, 4, 5 #Оператор = может работать сразу с несколькими переменными и значениями! (обязательно с запятыми)
a, b, c = 1, 2, 3
x, y, z
a
z -= x # z = z - x
z
y *= x # y = y * x
y
x //= x # x = x // x
x
c %= b # c = c % b
c
b = 5
b **= b # b = b**b
b
А вот так в питоне запросто можно обменять значения двух переменных:
x = 3
y = 5
x, y = y, x #Правда ведь красиво?
x,y
x = 3
y = 5
x = y
y = x
x, y
Переменные логического типа могут хранить два значения - True и False
a = True
b = False
a and b # и
a or b # или
not a # отрицание
Результаты сравнений переменных принимают значения типа bool.
В Python существуют следующие операторы сравнения:
Смотрите сами:
5 == 7
8 > 0
-10 <= 9
'Курица' == 'Птица'
'делать мне' > 'Нечего' # Как может работать сравнение строк?
'Делать мне' > 'Нечего' # Как может работать сравнение строк?
'Лекция' != 'Семинар'
3.0 == 3 # Python может даже сравнивать разные типы данных!
3.0 == '42' # Python может даже сравнивать разные типы данных.. а вот из-за этого будут ошибки
3 == "3"
a = 0.3 + 0.3 + 0.3
a
0.9 == a
eps = 0.00001
abs(0.9 - a) < eps
Строковые переменные хранят строки..
a = "Hello, "
b = 'world'
a
a + b # сложение строк, называется "конкатенация"
a - b # не, ну а вы что ожидали?
"3" - "5"
"3" + "5"
a * b # однако кто ищет..
a * 5 # тот всегда найдет! нечасто такое нужно, правда
a[0] # у строки можно взять какой-то определенный символ, отсчет с нуля..
a[0:5] # или несколько, называется "срез" [0, 5)
a[0:3] + "p"
c = a + b
c
len(c)
Самое простое - читать, что нам ввели с клавиатуры
a = input()
a
a # теперь a хранит значение, которое ввел пользователь
a = input() # а если хотим получить число?
a
a = int(a) # преобразование того, что хранится в a к целочисленной переменной
a
a = float(a) # преобразование того, что хранится в a к вещественной переменной
a
str(a) # преобразование того, что хранится в a к строковой переменной
str(10)
a = int("100")
a = a * 5
a
a = int("100gg")
a = a * 5
a
Самый простой способ - использовать функцию print
a = 45
print(a)
А если хотим вывести две переменные? Можно так:
a = 10
b = "Hi"
print(a, b)
А можно так:
a = 10
b = "Hi"
print (str(a) + ", " + str(b))
c = str(a) + ", " + str(b)
print(c)
print(a, b, sep=', ')
10 + "hi"
a = 10
b = "Hi"
c = "{}, {}".format(a, b)
print (c )
c = "{0}, {1}".format(a, b)
print (c )
pi = 3.141592653589793
r = input()
r = int(r)
print(2 * pi * r)
r = input()
r = int(r)
print(round(2 * pi * r, 3))
answer = 10.0000000
print(round(answer, 3))
answer = 10.0000000
k = "{}".format(answer)
print(k)
answer = 10.0000000
k = "{:.3f}".format(answer)
print(k)