From 73bd0f37ed1791eeb143611cc76bf40cb89b9e1e Mon Sep 17 00:00:00 2001 From: "FilippovDY (FilippovDY)" Date: Mon, 29 Sep 2025 00:30:42 +0300 Subject: [PATCH] Tema4/report.md --- TEMA4/Ris1.1.png | Bin 0 -> 26210 bytes TEMA4/Ris1.png | Bin 0 -> 20051 bytes TEMA4/Ris2.png | Bin 0 -> 15503 bytes TEMA4/Ris3.png | Bin 0 -> 8493 bytes TEMA4/Ris4.png | Bin 0 -> 8482 bytes TEMA4/report.md | 458 +++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 458 insertions(+) create mode 100644 TEMA4/Ris1.1.png create mode 100644 TEMA4/Ris1.png create mode 100644 TEMA4/Ris2.png create mode 100644 TEMA4/Ris3.png create mode 100644 TEMA4/Ris4.png create mode 100644 TEMA4/report.md diff --git a/TEMA4/Ris1.1.png b/TEMA4/Ris1.1.png new file mode 100644 index 0000000000000000000000000000000000000000..a975fc956af801686f40af5b55ec84f86132886a GIT binary patch literal 26210 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 z%0D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 literal 0 HcmV?d00001 diff --git a/TEMA4/Ris2.png b/TEMA4/Ris2.png new file mode 100644 index 0000000000000000000000000000000000000000..0654f487e711acad3f7b0312621167e94cb4870c GIT binary patch literal 15503 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 literal 0 HcmV?d00001 diff --git a/TEMA4/Ris3.png b/TEMA4/Ris3.png new file mode 100644 index 0000000000000000000000000000000000000000..adafe01b3b26e967ab9c5fc75c2020d77ed14a17 GIT binary patch literal 8493 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 RS3=-*_LS`}#V4-)`Y-d}{<;7F literal 0 HcmV?d00001 diff --git a/TEMA4/Ris4.png b/TEMA4/Ris4.png new file mode 100644 index 0000000000000000000000000000000000000000..a08b02d2edf861dab4fe7349cd1a7b22be715736 GIT binary patch literal 8482 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 G2mb%}tw literal 0 HcmV?d00001 diff --git a/TEMA4/report.md b/TEMA4/report.md new file mode 100644 index 0000000..e60b279 --- /dev/null +++ b/TEMA4/report.md @@ -0,0 +1,458 @@ + # Отчёт по теме 4: "Встроенные функции" +Филиппов Даниил Юрьевич, А-01-23 + + # 1. Запуск интерактивной оболочки. +```py +>>> import os +>>> os.chdir('C:\\Users\\danii\\Desktop\\FilippovDY\\python-labs\\TEMA4') +``` + +Встроенные функции – это готовые к использованию функции, реализующие различные полезные операции, необходимость в которых часто возникает при решении прикладных задач. Часть из них имеется в виде стандартных функций – то есть они не требуют дополнительных усилий, готовы к употреблению сразу после запуска среды Python и относятся к классу 'builtin_function_or_method'. Другие собраны в совокупности, называемые модулями, и требуют выполнения операции импорта соответствующего модуля, прежде чем воспользоваться входящими в него функциями. Они являются объектами класса 'function'. Модули также являются объектами класса 'module' и тогда входящие в них функции представляют собой методы этих объектов. Фактически, модули представляют собой библиотеки включенных в них функций. + + # 2. Стандартные функции +Находятся в модуле builtins, который становится доступным без импорта при запуске среды IDLE. + + ## 2.1 Функция round - округление числа с заданной точностью. +```py +>>> help(round) +Help on built-in function round in module builtins: + +round(number, ndigits=None) + Round a number to a given precision in decimal digits. + + The return value is an integer if ndigits is omitted or None. Otherwise + the return value has the same type as the number. ndigits may be negative. +>>> round(123.456,1) +123.5 +>>> type(round(123.456,1)) + + +>>> round(123.456,0) +123.0 +>>> type(round(123.456,0)) + + +>>> round(123.456) +123 +>>> type(round(123.456)) + +``` +Если не указана точность, функция возвращает округленное целое число. +Если указана, даже ноль, - то число с плавающей точкой. + + ## 2.2 Функция range – создание последовательности целых чисел с заданным шагом или, по умолчанию, с шагом 1. +```py +>>> gg=range(76,123,9) +>>> gg +range(76, 123, 9) +>>> type(gg) + +``` +Аргументами функции являются границы диапазона значений и шаг. При этом правая граница в создаваемую последовательность включена не будет. +Инструкция создает, так называемый, «итерируемый объект» класса range. Чтобы увидеть получившуюся последовательность чисел, его надо преобразовать, например, в список. +```py +>>> list(gg) +[76, 85, 94, 103, 112, 121] +>>> range(23) #Вызов функции с одним аргументом +range(0, 23) +>>> list(range(23)) +[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22] +``` + + ## 2.3 Функция zip – создание общего объекта, элементами которого являются кортежи, составленные из элементов двух или более объектов-последовательностей (zip – застежка-«молния»). +Длина результирующего объекта равна длине самого короткого объекта из двух аргументов функции. +Создадим объект-список с именем qq, содержащий строку с моей фамилией и строки-фамилии еще 3-х студентов. После этого применим функцию zip: + +```py +>>> qq=['Filippov','Berehskov','Tabolin','Golohshapov'] +>>> qq +['Filippov', 'Berehskov', 'Tabolin', 'Golohshapov'] +>>> ff=zip(gg,qq) +``` +Чтобы увидеть результат вычисления функции, превратим его, например, в кортеж: +```py +>>> tuple(ff) +((76, 'Filippov'), (85, 'Berehskov'), (94, 'Tabolin'), (103, 'Golohshapov')) +>>> ff[0] +Traceback (most recent call last): + File "", line 1, in + ff[0] +TypeError: 'zip' object is not subscriptable +``` +Объект класса zip не итерируемый, имеет длину меньшую из длин объектов-параметров, не изменяем. + + ## 2.4 Функция eval – вычисление значения выражения, корректно записанного на языке Python и представленного в виде символьной строки. +```py +>>> fff=float(input('коэффициент усиления=')); dan=eval('5*fff-156') +коэффициент усиления=100 +>>> dan +344.0 +``` + + ## 2.5 Функция exec – чтение и выполнение объекта-аргумента функции. Этот объект должен представлять собой строку символов с совокупностью инструкций на языке Python. +```py +>>> exec(input('введите инструкции:')) +введите инструкции:perem=-123.456;gg=round(abs(perem)+98,3) +>>> gg +221.456 +``` + + ## 2.6 Изучение других функций модуля builtins +```py +>>> abs(-658) #Взятие модуля +658 +>>> pow(5,2) #Возведение в степень +25 +>>> pow(5,4,10) #Возведение 5 в степень 4 и взятие остатка от деления на модуль = 10 +5 +``` + +Максимальное из значений +```py +>>> max(30,1,625) +625 +>>> max([10,0,-5]) +10 +>>> max({'a': 1, 'b': 2, 'c': 3}) +'c' +>>> max(["aaa", "aaaa", "a"], key = len) +'aaaa' +``` +Выбор большего в словаре происходит из ключей. Среди буквенных символов больше то, которое ближе к концу алфавита. С разными типами функция не работает. Также в данной функции можно указать по какому критерию выбирать максимальное значение. + +Функция минимального из значений работает аналогично и для неё справедливы все нюансы, аналогично максимуму +```py +>>> min(10,-1,625) +-1 +``` + +Функция сумма элементов: +```py +>>> help(sum) +Help on built-in function sum in module builtins: + +sum(iterable, /, start=0) + Return the sum of a 'start' value (default: 0) plus an iterable of numbers + When the iterable is empty, return the start value. + This function is intended specifically for use with numeric values and may + reject non-numeric types. +>>> sum([1,2,3,4]) +10 +>>> sum([1,2,3,4], -10) #Суммирование и затем вычитание значения из суммы +0 +``` + +Функция возвращения кортежа из целой части и остатка от деления (divmod): +```py +>>> help(divmod) +Help on built-in function divmod in module builtins: +divmod(x, y, /) + Return the tuple (x//y, x%y). Invariant: div*y + mod == x. +>>> divmod(15,3) +(5, 0) +>>> divmod(3,2) +(1, 1) +``` + +Длина объекта: +```py +>>> len((1,2,3)) +3 +>>> len("aaaaaaaaaa") +10 +``` + +Применение функции к каждому элементу коллекции +```py +>>> help(map) +Help on class map in module builtins: +class map(object) + | map(func, *iterables) --> map object + | + | Make an iterator that computes the function using arguments from + | each of the iterables. Stops when the shortest iterable is exhausted. +>>> numbers = [1, 2, 3, 4] +>>> str1 = list(map(str, numbers)) +>>> str1 +``` + + + # 3. Функции из стандартного модуля math - совокупность разнообразных математических функций +```py +>>> import math # Загрузка модуля +>>> dir(math) # Просмотр содержания модуля +['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'cbrt', 'ceil', 'comb', 'copysign', 'cos', 'cosh', 'degrees', 'dist', 'e', 'erf', 'erfc', 'exp', 'exp2', 'expm1', 'fabs', 'factorial', 'floor', 'fma', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'isqrt', 'lcm', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'nextafter', 'perm', 'pi', 'pow', 'prod', 'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'sumprod', 'tan', 'tanh', 'tau', 'trunc', 'ulp'] + +>>> help(math.factorial) +Help on built-in function factorial in module math: + +factorial(n, /) + Find n!. +>>> math.factorial(5) # Взятие факториала +120 +``` + +Попробуем другие функции +```py +>>> math.sin(2.152) # Взятие синуса +0.8358024024003236 + +>>> math.acos(1) # Взятие арккосинуса +0.0 + +>>> math.degrees(5.256) # Перевод из радиан в градусы +301.1466171207607 + +>>> math.radians (360) # Перевод из градусов в радианы +6.283185307179586 + +>>> math.exp(1) # Число е в степени +2.718281828459045 + +>>> math.log(25,5) # Нахождение логарифма +2.0 + +>>> math.log(25) # Если не задано основание логарифма, то он натуральный +3.2188758248682006 + +>>> math.log10(10000) # Десятичный логарифм +4.0 + +>>> math.sqrt(49) # Извлечение квадратного корня +7.0 + +>>> math.ceil(5.542) # Округление числа до ближайшего целого вверх +6 +>>> math.ceil(2.111) +3 + +>>> math.floor(5.252) # Округление вниз +5 +>>> math.floor(9.999) +9 + +>>> math.pi # Число пи +3.141592653589793 + +>>> math.sin(2 * math.pi / 7 + math.exp(0.23)) # Вычислите значение функции sin(2π/7+e0.23 ) +0.8334902641414562 +``` + + # 4. Функции из модуля cmath – совокупность функций для работы с комплексными числами +```py +>>> import cmath # Импорт модуля +>>> dir(cmath) # Отображение атрибутов модуля +['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atanh', 'cos', 'cosh', 'e', 'exp', 'inf', 'infj', 'isclose', 'isfinite', 'isinf', 'isnan', 'log', 'log10', 'nan', 'nanj', 'phase', 'pi', 'polar', 'rect', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau'] + +>>> cmath.sqrt(1.2-0.5j) # Извлечение квадратного корня из комплексного числа +(1.118033988749895-0.22360679774997896j) + +>>> cmath.phase(1-0.5j) # Расчёт фазы +-0.4636476090008061 +``` + + # 5. Стандартный модуль random – совокупность функций для выполнения операций с псевдослучайными числами и выборками. +```py +>>> import random +>>> dir(random) +['BPF', 'LOG4', 'NV_MAGICCONST', 'RECIP_BPF', 'Random', 'SG_MAGICCONST', 'SystemRandom', 'TWOPI', '_ONE', '_Sequence', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '_accumulate', '_acos', '_bisect', '_ceil', '_cos', '_e', '_exp', '_fabs', '_floor', '_index', '_inst', '_isfinite', '_lgamma', '_log', '_log2', '_os', '_parse_args', '_pi', '_random', '_repeat', '_sha512', '_sin', '_sqrt', '_test', '_test_generator', '_urandom', 'betavariate', 'binomialvariate', 'choice', 'choices', 'expovariate', 'gammavariate', 'gauss', 'getrandbits', 'getstate', 'lognormvariate', 'main', 'normalvariate', 'paretovariate', 'randbytes', 'randint', 'random', 'randrange', 'sample', 'seed', 'setstate', 'shuffle', 'triangular', 'uniform', 'vonmisesvariate', 'weibullvariate'] + +>>> help(random.seed) +Help on method seed in module random: + +seed(a=None, version=2) method of random.Random instance + Initialize internal state from a seed. + + The only supported seed types are None, int, float, + str, bytes, and bytearray. + + None or no argument seeds from current time or from an operating + system specific randomness source if available. + + If *a* is an int, all bits are used. + + For version 2 (the default), all of the bits are used if *a* is a str, + bytes, or bytearray. For version 1 (provided for reproducing random + sequences from older versions of Python), the algorithm for str and + bytes generates a narrower range of seeds. + +>>> random.seed() +``` +Данная функция задаёт случайное начальное состояние для псевдослучайных чисел, не имеет возвращаемых значений. Устанавливает начальное значение для алгоритма генерации случайных чисел. При одинаковом seed последовательность "случайных" чисел будет одинаковой при каждом запуске программы. Если не использовать seed(), Python автоматически использует текущее время системы как seed, что даcт случайные результаты между запусками. + +```py +>>> random.random() # Случайное число от 0 до 1 +0.6896328742186021 +>>> random.random() +0.1726529816841289 + +>>> random.uniform(2,4) # Равномерно распределенное случайное число +2.735006538726008 + +>>> random.randint(1,5) # Равномерное случайное целое +1 + +>>> random.choice([True, "a", 1, 5.25, 1+7j]) # Случайный выбор из совокупности +True + +>>> lis1=[True, "a", 1, 5.25, 1+7j] +>>> random.shuffle(lis1) # Случайное перемешивание элементов коллекции (изменяет исходный объект) +>>> lis1 +[True, 'a', 1, (1+7j), 5.25] + +>>> random.gauss(0,1) # Нормально распределенное случайное число, без заданных матожидания и дисперсии выдаст ошибку +0.24764673316146607 + +>>> random.sample(lis1, 5) # Случайное подмножество заданного множества +[(1+7j), True, 1, 5.25, 'a'] +>>> random.sample(lis1, 2) +['a', (1+7j)] + +>>> random.betavariate(1,2) # Случайное число, подчиняющееся бета-распределению +0.7155538539701354 + +>>> random.gammavariate(1,2) # Случайное число, подчиняющееся гамма-распределению +0.9953376942065243 +``` + +Создадим список с 4 случайными элементами, подчиняющимися, соответственно, равномерному, нормальному, бета и гамма – распределениям +```py +>>> spis1 = [0] * 4 +>>> spis1[0] = random.uniform(1,2) +>>> spis1[1] = random.gauss(2, 0.5) +>>> spis1[2] = random.betavariate(2,1) +>>> spis1[3] = random.gammavariate(1,0.5) +>>> spis1 +[1.577778913715452, 2.3612752923145632, 0.4957050262397597, 1.0422258764453651] +``` + + + # 6. Функции из модуля time – работа с календарем и со временем. +```py +>>> import time +>>> dir(time) +['_STRUCT_TM_ITEMS', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'altzone', 'asctime', 'ctime', 'daylight', 'get_clock_info', 'gmtime', 'localtime', 'mktime', 'monotonic', 'monotonic_ns', 'perf_counter', 'perf_counter_ns', 'process_time', 'process_time_ns', 'sleep', 'strftime', 'strptime', 'struct_time', 'thread_time', 'thread_time_ns', 'time', 'time_ns', 'timezone', 'tzname'] +``` + +Функция time, возвращающая время в секундах, прошедшее с начала эпохи, за которое принимается 1.01.1970г. +```py +>>> c1=time.time() +>>> c1 +1759092688.1569457 +>>> c2=time.time()-c1 # Временной интервал в секундах, со времени ввода предыдущей инструкции +>>> c2 +18.95661425590515 +``` + +Функция gmtime, возвращающая объект класса struct_time, содержащий полную информацию о текущем времени: год (tm_year), месяц (tm_mon), день tm_mday). Эта функция возвращает, так называемое, «Всемирное координированное время» (UTC). Московское время MSK опережает UTC на 3 часа. +```py +>>> dat=time.gmtime() +>>> dat +time.struct_time(tm_year=2025, tm_mon=9, tm_mday=28, tm_hour=20, tm_min=52, tm_sec=8, tm_wday=6, tm_yday=271, tm_isdst=0) +>>> dat.tm_mon # Обращение к компонентам получившегося объекта +9 +>>> dat.tm_year +2025 +>>> dat.tm_yday +271 +``` + +Для получения местного времени используется функция localtime: +```py +>>> now=time.localtime() +>>> now +time.struct_time(tm_year=2025, tm_mon=9, tm_mday=28, tm_hour=23, tm_min=57, tm_sec=45, tm_wday=6, tm_yday=271, tm_isdst=0) + +>>> time.asctime(now) # Преобразование представления времени из кортежа в строку +'Sun Sep 28 23:57:45 2025' + +>>> time.ctime() # Преобразование времени в секундах, прошедшего с начала эпохи, в строку +'Sun Sep 28 23:59:29 2025' + +>>> time.sleep(5) # Прерывание работы программы на заданное время + +>>> time.mktime(now) # Преобразование времени из типа кортежа или struct_time в число секунд с начала эпохи +1759093065.0 + +>>> time.localtime(c1) # Обратное преобразование из секунд в местное время +time.struct_time(tm_year=2025, tm_mon=9, tm_mday=28, tm_hour=23, tm_min=51, tm_sec=28, tm_wday=6, tm_yday=271, tm_isdst=0) +``` + + + # 7. Графические функции +В развернутой версии Python должны быть установлены модули пакета matplotlib, в состав которого входит модуль pylab, содержащий ряд полезных вычислительных функций и графических возможностей. +```py +>>> import pylab +>>> x=list(range(-3,55,4)) # Создание списка, который хранит значение сигнала x +>>> t=list(range(15)) # Создание списка, который хранит моменты времени измерения значений сигнала t + +>>> pylab.plot(t,x) #Создание графика в оперативной памяти +[] +>>> pylab.title('Первый график') +Text(0.5, 1.0, 'Первый график') +>>> pylab.xlabel('время') +Text(0.5, 0, 'время') +>>> pylab.ylabel('сигнал') +Text(0, 0.5, 'сигнал') +>>> pylab.show() #Отображение графика на экране +``` +(Ris1.png) +Открылось внешнее окно с графиком. График сохранен в файле с именем Ris1.png + +Рассмотри способ построения нескольких графиков на одном рисунке. +```py +>>> X1=[12,6,8,10,7] +>>> X2=[5,7,9,11,13] +>>> pylab.plot(X1) +[] +>>> pylab.plot(X2) +[] +>>> pylab.show() +``` +(Ris1.1.png) +Появились две ломаные линии синего и оранжевого цвета. График сохранен в файле с именем Ris1.1.png + +Изучение возможности построения круговой диаграммы +```py +>>> region=['Центр','Урал','Сибирь','Юг'] #Метки для диаграммы +>>> naselen=[65,12,23,17] # Значения для диаграммы +>>> pylab.pie(naselen,labels=region) #Создание диаграммы в памяти +([, , , ], [Text(-0.191013134139045, 1.0832885038559115, 'Центр'), Text(-0.861328292412156, -0.6841882582231001, 'Урал'), Text(0.04429273995539947, -1.0991078896938387, 'Сибирь'), Text(0.9873750693480946, -0.48486129194837324, 'Юг')]) +>>> pylab.show() #Отображение диаграммы +``` +(Ris2.png) +График сохранён в файле Ris2.png + +Изучение применения функций hist и bar: +```py +>>> pylab.bar(region, naselen) # Создание столбиковой диаграммы + +>>> pylab.show() +``` +(Ris3.png) +Столбиковая диаграмма сохранена в файле Ris3.png + +```py +>>> pylab.hist(region, weights=naselen) +(array([65., 0., 0., 12., 0., 0., 23., 0., 0., 17.]), array([0. , 0.3, 0.6, 0.9, 1.2, 1.5, 1.8, 2.1, 2.4, 2.7, 3. ]), ) +>>> pylab.show() +``` +(Ris4.png) +Гистограмма сохранена в файле Ris4.png + + + # 8. Изучение статистического модуля statistics +```py +>>> data = [1, 2, 3, 4, 5] +>>> statistics.mean(data) # Математическое ожидание +3 +>>> statistics.median(data) # Медиана +3 +>>> statistics.stdev(data) # Среднеквадратическое отклонение +1.5811388300841898 +>>> statistics.variance(data) # Дисперсия +2.5 + + + # 9. Завершение сеанса работы с IDLE +