Числа¶
Числа в Python 3 — целые, вещественные, комплексные. Работа с числами и операции над ними.
Целые числа (int)¶
Числа в Python 3 ничем не отличаются от обычных чисел. Они поддерживают набор самых обычных математических операций:
| Синтаксис | Описание |
|---|---|
| x + y | Сложение |
| x — y | Вычитание |
| x * y | Умножение |
| x / y | Деление |
| x // y | Получение целой части от деления |
| x % y | Остаток от деления |
| -x | Смена знака числа |
| abs(x) | Модуль числа |
| divmod(x, y) | Пара ( x // y , x % y ) |
| x ** y | Возведение в степень |
| pow(x, y[, z]) | x y по модулю (если модуль задан) |
Также нужно отметить, что целые числа в python 3, в отличие от многих других языков, поддерживают длинную арифметику (однако, это требует больше памяти).
Битовые операции¶
Над целыми числами также можно производить битовые операции
Дополнительные методы¶
Системы счисления¶
Те, у кого в школе была информатика, знают, что числа могут быть представлены не только в десятичной системе счисления. К примеру, в компьютере используется двоичный код, и, к примеру, число 19 в двоичной системе счисления будет выглядеть как 10011 . Также иногда нужно переводить числа из одной системы счисления в другую. Python для этого предоставляет несколько функций:
int([object], [основание системы счисления]) преобразование к целому числу в десятичной системе счисления. По умолчанию система счисления десятичная, но можно задать любое основание от 2 до 36 включительно. bin(x) преобразование целого числа в двоичную строку. hex(х) преобразование целого числа в шестнадцатеричную строку. oct(х) преобразование целого числа в восьмеричную строку.
Вещественные числа (float)¶
Вещественные числа поддерживают те же операции, что и целые. Однако (из-за представления чисел в компьютере) вещественные числа неточны, и это может привести к ошибкам:
Для высокой точности используют другие объекты (например Decimal и Fraction )).
Также вещественные числа не поддерживают длинную арифметику:
Простенькие примеры работы с числами:
Дополнительные методы¶
Помимо стандартных выражений для работы с числами (а в Python их не так уж и много), в составе Python есть несколько полезных модулей.
Модуль math предоставляет более сложные математические функции.
Модуль random реализует генератор случайных чисел и функции случайного выбора.
Преобразовать десятичное в троичное (base3) в Python
Я пытаюсь сделать десятичное число троичным в функции Python. Моя идея состояла в том, чтобы продолжать деление до тех пор, пока частное и остальное не будут равны, но я не могу заставить это работать. Вот мой код:
2 ответа
Моя идея состояла в том, чтобы продолжать деление до тех пор, пока частное и остальное не будут равны, но я не могу заставить это работать.
Да, что-то в этом роде. По сути, вы хотите разделить на 3 и собрать остатки. Остатки затем составляют окончательный номер. В Python вы можете использовать divmod разделить и собрать остаток.
Перевод систем счисления [дубликат]
Вот способ для того, чтобы переводить из десятичной в любую систему счисления:
Ещё есть функции bin() , oct() , int() , hex() .
хочу дополнить ответ выше и сказать, что если вам наоборот нужно перевести в десятичную систему исчисления, то можно сделать так (это фрагмент кода):
здесь 2 — это основание системы исчисления, из которой надо перевести в десятичную.
![]()
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.6.8.43486
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Лекция: Числа. Модули, Графики
Числа в Python 3: целые, вещественные, комплексные. Числа в Python 3 ничем не отличаются от обычных чисел. Они поддерживают набор самых обычных математических операций: + , — , * , / , // (целая часть от деления), % (остаток от деления), ** (возведение в степень)
Обратите внимание на строку №3 приведенного примера, где происходит парное присвоение, часто используемое в языке python.
Модуль числа можно найти при помощи функции abs(x) . Функция divmod(x,y) вернет пару чисел (x//y,x%y) . Для возведения в степень имеется функция pow(x,y[,z]) .
Также нужно отметить, что целые числа в python 3, в отличие от многих других языков, поддерживают длинную арифметику (однако, это требует больше памяти).
Задание 4.1 Длина длинного числа
Запросить у пользователя два целых числа X и Y. Найти число знаков в числе X Y .
Системы счисления
- int([object], [основание системы счисления]) — преобразование к целому числу в десятичной системе счисления. По умолчанию система счисления десятичная, но можно задать любое основание от 2 до 36 включительно.
- bin(x) — преобразование целого числа в двоичную строку.
- hex(х) — преобразование целого числа в шестнадцатеричную строку.
- oct(х) — преобразование целого числа в восьмеричную строку.
Вещественные числа (float)
Вещественные числа поддерживают те же операции, что и целые. Однако (из-за представления чисел в компьютере) вещественные числа неточны, и это может привести к ошибкам:
Вещественные числа не поддерживают длинную арифметику.
Задание 4.2 Калькулятор v2
Необходимо запросить у пользователя строку для вычислений. В качестве операций вводятся символы +, -, *, /. Нужно вывести результат вычислений. Например:
Комплексные числа (complex)
В Python встроены также и комплексные числа:
Модули
Система модулей позволяет вам логически организовать ваш код на Python. Группирование кода в модули значительно облегчает процесс написания и понимания программы. Говоря простым языком, модуль в Python это просто файл, содержащий код на Python. Каждый модуль в Python может содержать переменные, объявления классов и функций. Кроме того, в модуле может находиться исполняемый код.
Вы можете использовать любой питоновский файл как модуль в другом файле, выполнив в нем команду import . Команда import в Python обладает следующим синтаксисом:
Важно знать, что модуль загружается лишь однажды, независимо от того, сколько раз он был импортирован. Это препятствует цикличному выполнению содержимого модуля.
Команда from . import позволяет вам импортировать не весь модуль целиком, а только определенное его содержимое. Например:
Выражение from . import не импортирует весь модуль, а только предоставляет доступ к конкретным объектам, которые мы указали.
В Python так же возможно импортировать всё (переменные, функции, классы) за раз из модуля, для этого используется конструкция from . import * . Например:
Однако это конструкцию следует использовать с осторожностью, поскольку при импортировании нескольких модулей можно запутаться в своем собственном коде.
Модуль math
Модуль math – один из наиважнейших в Python. Этот модуль предоставляет обширный функционал для работы с числами. В нем вы найдете такие функции как sin() , cos() , sqrt() , cos() , log() , exp() , trunc() . В нем же определены константы pi , e .
Модуль random
Модуль random предоставляет функции для генерации случайных чисел, букв, случайного выбора элементов последовательности. Модуль собрал разные функции для имитации случайных процессов: random() , randint() , randrange() , choice() , shuffle() , gauss() и другие.
Задание 4.3 Камень, ножницы, бумага
Запрограммируйте игру с компьютером в «Камень, ножницы, бумага». Пример диалога:
Построение диаграмм в python
простейший график, который можно построить в Matplotlib, это график синуса и косинуса: