Программа табулирования функции в питоне

Начав писать главу про ООП, понял что совсем забыл освятить такой большой и нужный раздел Пайтона как функции. Тема это большая и обширная, потому, чтобы не сильно растягивать паузу между уроками, решил разделить ее на 2 части. Сначала расскажу основы, потом уже углубленные особенности Пайтоновского функциестроения.

Функции в Пайтоне объявляются не просто, а очень просто. Вот пример самой простой:

def empty_func(): pass

Начинается объявление с ключевого слова def, что как не сложно догадаться является сокращением от define. После него идет имя функции. После имени в круглых скобках задается список параметров, в данном случае отсутствующих.
Тело функции пишется с отступом со следующей строки. учтите, что в Пайтоне функции с пустым телом запрещены, потому в качестве тела приведенной выше функции используется «пустой оператор» pass.
Теперь рассмотрим пример посерьезнее.

def safe_div(x, y): «»»Do a safe division 🙂 for fun and profit»»» if y != 0: z = x / y print z return z else: print «Yippie-kay-yay, motherf___er!»

В этом примере есть несколько нововведений. первое, что бросается в глаза — это строка документации (docstring), идущая сразу после тела функции.

35 Функции (def) в Python. Определение и вызов функции


Обычно эта строка занимает не одну строку исходного текста (простите за каламбур) и потому задается в тройных кавычках. Она предназначена для описания функции, ее предназначения, параметров и т.п. Все хорошие ИДЕ умеют с этой строкой работать. Получить к ней доступ можно и из самой программы, используя свойство __doc__:

print safe_div.__doc__

Этим свойством (да, да, именно свойством, в Пайтоне даже функции на самом деле — классы) удобно пользоваться во время сеансов работы интерактивной консоли.

>>> from ftplib import FTP >>> print FTP.__doc__ An FTP client class. To create a connection, call the class using these argument: host, user, passwd, acct These are all strings, and have default value ». Then use self.connect() with optional host and port argument. # дальнейшее почикано мною 🙂

Читайте также:
Диагностические программы для грузовых автомобилей

Вернемся к нашей исходной функции. Суть ее очень проста, она принимает 2 параметра: х и у. Если у не равен 0, она делит х на у, выводит результат на экран и возвращает свое частное в виде результата. Результат функции возвращают с помощью команды return. Благодаря механизму кортежей, описанному в прошлом уроке, функции в Пайтоне могут возвращать одновременно множество объектов.
Если же делитель все-таки равен нулю, функция выводит сообщение об ошибке. Неверно было бы предположить что в этом случае функция ничего не вернет. Правильнее будет сказать что функция вернет «ничего» 🙂 Иначе говоря, если в функции отсутствует оператор return, или же он вызван без параметров, то функция возвращает специальное значение None. В этом легко убедиться вызвав что-то типа print safe_div(10, 0).

Вот пример слегка посложнее, он взят из доклада-презентации Гвидо ван Россума.

def gcd(a, b): «Нахождение НОД» while a != 0: a,b = b%a,a # параллельное определение return b

Данная функция находит наибольший общий делитель двух чисел.

В общем, следует учитывать, что параметры в функции Пайтоном передаются по ссылке. Еще одним, возможно нетривиальным фактом к которому придется привыкать — является тот факт что сами функции являются значением, которое можно присваивать. Если воспользоваться нашей функцией safe_div для дальнейших экспериментов, то можно написать следующий код.

mystic_function = safe_div print mystic_function(10, 4)

Вот на этот раз и все, «за бортом» осталось еще много аспектов определения функций в Пайтоне, которые будут освещены в следующий раз.

Упражнения для проверки.
1. На основе существующей функции нахождения НОД, напишите функцию поиска НОК двух чисел.
2. Напишите подпрограмму табулирования функции, переданной в качестве аргумента. Так же аргументами задается начальное, конечное значение и шаг табуляции.

Читайте также:
Симс 4 программа для обновления игры

Язык C++ с нуля — #28 Табулирование функции в c++

#35. Функции: первое знакомство, определение def и их вызов — Python для начинающих

35 Функции (def) в Python. Определение и вызов функции

10 признаков того, что вы новичок в Python

Изучаем Python 2019 #10 — Вывод с новой строки, табуляция — Язык программирования Питон — Уроки


Уроки Python / Как создать функцию, что такое функции в Python, как с ними работать

ТОП 5 Ошибок в написании функций Python

Язык си с нуля — #20 Табулирование функции в си.

Пробелы И Отступы В Python — Синтаксис Python

Новые материалы:

  • Cv2 videocapture python описание
  • Кузнечик шифр python
  • Генератор декораторов python
  • Игры сделанные на pygame
  • Python переводчик оффлайн
  • Как обрезать список python
  • Python список в словарь
  • Как проверить что число двузначное в python
  • Как отправить стикер в телеграмме бот python
  • Настройка geany для python
  • Python объект в словарь
  • Python открыть папку в проводнике
  • База данных для телеграмм бота python
  • Командная строка dos windows 10 python

Источник: pygame.ru

Изучаем Python

С помощью оператора цикла while удобно строить таблицы значений различных функций. Т.е. значения будут выстраиваться столбцами. По сути такие таблицы представляют собой список значений функции при различных значениях ее параметра.

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

#!/usr/bin/env python # -*- coding: utf-8 -*- import math def p1( ): x = 1.0 while x 10.0: print x, «t», math.log(x) x += 1.0 def main( ): p1( ) return 0 if __name__ == ‘__main__’: main( )
Строка » t » обозначает знак табуляции. Благодаря нему значения выстраиваются в два столбца.

Читайте также:
Составить программу которая проверяет

Разберем, как эта программа работает. Параметр x изменяется от 1.0 с шагом 1.0, пока он меньше 10.0. В теле цикла выводится текущее значение параметра x, затем знак табуляции и результат вычисления функции math.log(x) , т.е. натуральный логарифм от x

(log e x=ln  x ).

Результат работы программы будет выглядеть так:

1.0 0.0 2.0 0.69314718056 3.0 1.09861228867 4.0 1.38629436112 5.0 1.60943791243 6.0 1.79175946923 7.0 1.94591014906 8.0 2.07944154168 9.0 2.19722457734

Источник: pythonblogg.blogspot.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru