Програмирање

Ултимате Питхон водич за почетнике

30. октобар 2021

Преглед садржаја

  • Енвиронмент Сетуп
    • Подешавање локалног окружења
    • Како набавити Питхон
    • Како инсталирати Питхон
    • Виндовс Инсталлатион
    • Уник/Линук инсталација
    • МАЦ Инсталлатион
    • Подешавање путање за Питхон
    • Подешавање путање за Уник/Линук
    • Подешавање путање за Виндовс
  • Питхон променљиве окружења
    • Покретање Питхон-а
  • Основна синтакса
    • Питхон идентификатори
    • Питхон изјава
    • Увлаке у Питхон-у
    • Коментари у Питхон-у
    • Геттинг Инпут
    • Прикажите излаз
  • Типови променљивих
    • Додељивање вредности променљивим
    • Питхон типови података
    • Стрингс
    • Туплес
    • Листе
    • Бројеви
  • Основни оператери
    • Оператор додељивања
    • Битвисе оператор
    • Логички оператор
    • Аритметички оператор
    • Оператор поређења
    • Оператор идентитета
    • Оператер чланства
  • Одлучивати
    • Ако изјава
    • ако друго
    • Угнежђено ако
    • Ако-елиф-друго-мердевине
    • Скраћеница иф изјава
    • Скраћеница иф-елсе изјава
  • Петље
    • Вхиле Лооп
    • Фор Лооп
    • Угнежђене петље
    • Изјаве о контроли петље
    • Наставите изјаву
    • Изјава о прекиду
    • Пасс изјава
  • Бројеви
    • Конверзија типа броја
    • Функције случајног броја
    • Тригонометријске функције
    • Математичке функције
  • Стрингс
    • Креирање стринга
    • Стринг Специал Операторс
    • Оператори за форматирање стрингова
    • Есцапе Цхарацтерс
    • Уграђене стринг методе
  • Туплес
    • Приступање вредностима у корицама
    • Ажурирање тупле
    • Основни тупле оператори
    • Уграђене тупле функције
    • Индексирање и резање
    • Брисање тупле
  • Листе
    • Приступ вредностима у листама
    • Ажурирање листа
    • Оператори основне листе
    • Уграђене функције и методе листе
    • Индексирање и резање
    • Избриши елемент листе
  • Речник
    • Израда речника
    • Додавање елемената у речник
    • Уклањање елемената из речника
    • Методе Питхон речника
  • Датум и време
    • Тиме Тупле
    • Временски модул
    • Календарски модул
  • Функције
  • Модули
  • Датотеке И/О
    • Отварање датотеке
    • Атрибути објекта датотеке
    • Затварање датотеке
    • Са Изјавом
    • Метода Врите
    • Метода читања
    • Метода ренаме().
    • Метода ремове().
    • Позиција датотеке
  • Изузеци
    • Шта је изузетак?
    • Руковање изузетком
    • Подизање изузетка
    • Списак стандардних изузетака
    • Кориснички дефинисани изузеци
    • Тврдње у Пајтону
  • Класе и објекти
    • Креирање часова
    • Цласс Објецтс
    • Приступ атрибутима
    • Уграђени атрибути класе
    • Отпад
    • Наслеђивање класа
    • Оверридинг Метходс
    • Регуларни изрази
    • Функција подударања
    • Функција претраге
    • Модификатори регуларног израза
    • Обрасци регуларног израза
    • Цхарацтер Цлассес
    • Случајеви понављања
    • Анцхорс
  • ЦГИ програмирање
    • Веб претраживање
    • ХТТП заглавље
    • ЦГИ варијабле окружења
    • ГЕТ метод
    • ПОСТ метода
    • Коришћење колачића у ЦГИ
    • Како то функционише?
  • Приступ МиСКЛ бази података
    • Креирање табеле базе података
    • ИНСЕРТ Оператион
    • РЕАД Оператион
    • Операција ажурирања
    • Операција ДЕЛЕТЕ
    • Обављање трансакција
    • ЦОММИТ Операција
    • Операција РОЛЛБАЦК
    • Прекидање везе са базом података
    • Руковање грешкама
  • Мреже
    • Шта су утичнице?
    • Модул утичнице
    • Питхон Интернет модули
  • Слање е-поште
    • Слање ХТМЛ е-поште помоћу Питхон-а
    • Слање прилога као е-маил
  • Вишенитно програмирање
    • Покретање нове теме
    • Тхе Тхреадинг Модуле
    • Синцхронизинг Тхреадс
    • Вишенитни приоритетни ред
  • КСМЛ обрада
    • Шта је КСМЛ?
    • Архитектуре и АПИ-ји КСМЛ парсера
    • Парсинг КСМЛ са САКС АПИ-јима
      • Метода маке_парсер
      • Метода парсе
      • Метод парсеСтринг
  • ГУИ програмирање
    • Ткинтер виџети
  • Управљање геометријом
  • Препоручени чланци

Функције

Функција је скуп исказа који узимају инпуте, производе излаз и врше неке специфичне прорачуне и. Идеја је да спојимо неке уобичајене задатке и направимо функцију тако да уместо да поново пишемо исти код за различите улазе, можемо позвати функцију.

Питхон обезбеђује уграђене функције као што је принт(), итд., али можемо да креирамо и ваше функције. Ове функције се називају кориснички дефинисаним функцијама.

имг 617дд26е8д81ф

ОУТПУТ

имг 617дд26еце337

Како дефинисати функцију

  • Функцијски блок почиње кључном речју деф, а прате га назив функције и заграде ( ( ) ).
  • Све улазне аргументе треба ставити унутар заграда. Можете дефинисати параметре унутар заграда.
  • Прва изјава функције може бити опциона – документациони низ функције.
  • Код унутар сваке функције обично почиње двотачком (:) и увучен је.
  • Наредба ретурн излази из функције, која опционо враћа израз позиваоцу. Наредба ретурн без аргумената је иста као ретурн Ноне.

Синтакса

|_+_|

Позивање функције

Дефинисање функције значи давање имена функцији, специфицирање параметара који су укључени у функцију и структурирање блокова кода. Ако је основна структура функције коначна, можете извршити функцију тако што ћете је позвати из друге функције или директно из Питхон промпта.

Прођите по референци

Сви параметри у језику Питхон се генерално прослеђују референцом. То значи да ако промените оно што параметар каже унутар функције, промена се такође одражава у функцији која позива.

Прођите поред вредности

У пролазу по вредности, функција је генерално обезбеђена копијом објекта аргумента који је прослеђивао позивалац. То значи да оригинални објекат остаје нетакнут, а измене које су направљене су копија и чувају се на различитим меморијским локацијама.

Аргументи функције

Можете позвати функције користећи ове формалне аргументе

  • Аргументи променљиве дужине
  • Обавезни аргументи
  • Подразумевани аргументи
  • Аргументи кључних речи

Аргументи променљиве дужине

Морате обрадити функцију за више аргумената него што сте навели док дефинишете функцију. Ови аргументи су познати као променљиве дужине аргументи, а они нису именовани у дефиницији функције, за разлику од обавезних и подразумеваних аргумената.

имг 617дд26ф125ц2

ОУТПУТ

имг 617дд26ф54165

Обавезни аргументи

Обавезни аргументи су они аргументи који се прослеђују функцији у исправном редоследу. Овде, аргументи у позиву функције треба да се тачно поклапају са дефиницијом функције.

имг 617дд26ф8ф03ф

ОУТПУТ

имг 617дд27001ф4б

Подразумевани аргументи

Подразумевани аргумент је аргумент који претпоставља подразумевану вредност без обзира да ли је дата вредност или не у позиву функције за тај аргумент.

имг 617дд2703б6е4

ОУТПУТ

имг 617дд2707158ф

Аргументи кључних речи

Питхон вам помаже да позовете функцију помоћу аргумената кључне речи. Овај позив функције ће вам омогућити да проследите изјаве насумичним редоследом.

Име аргумента се третира као кључне речи и подудара се у позиву функције и дефиницији. Ако се пронађе исто подударање, вредности аргумената се копирају у дефиницију функције.

имг 617дд270б419ф

ОУТПУТ

имг 617дд2710а550

Анонимне функције

  • Ламбда облици могу узети више аргумената, али враћају само једну вредност у облику израза. Не могу да садрже команде или више израза.
  • Анонимна функција не може бити директан позив за штампање јер ламбда захтева израз.
  • Ламбда функције имају локалне просторе имена и не могу приступити променљивим осим оних у њиховој листи параметара и оних у глобалном именском простору.
  • Међутим, чини се да су ламбда функције у једном реду, оне нису еквивалентне инлине наредбама у Ц++ или Ц, чија је сврха заобићи додељивање стека функција током позивања из разлога перформанси.

Модули

Модул вам омогућава да логички организујете свој Питхон код. Груписање кода у модул чини код лакшим за разумевање и употребу. Модул је Питхон објекат са доследно именованим атрибутима које можете да повежете и референцирате.

Другим речима, модул је датотека која се састоји од Питхон кода. Модул може да дефинише функције, класе и променљиве. Такође може укључити код који се може покренути.

Изјава о увозу

Можете користити Питхон изворну датотеку као модул тако што ћете извршити наредбу за увоз у неким другим изворним датотекама Питхон-а.

СИНТАКСА

|_+_|

Када тумач наиђе на наредбу за увоз, увози модул који је представљен у путањи за претрагу. То је листа директоријума које тумач претражује пре увоза модула.

Изјава о увозу

Питхон фром изјава вам помаже да увезете одређене атрибуте из модула у тренутни простор имена.

СИНТАКСА

|_+_|

Изјава из увоза *

Могуће је увести сва имена из модула у тренутни простор имена.

СИНТАКСА

|_+_|

Пружа једноставан начин за увоз ставки из модула у тренутни простор имена; иако ову изјаву треба користити штедљиво.

Лоцирање модула

Када увозите модуле, тумач тражи модул у овим секвенцама

  • Текући директоријум.
  • Ако модул није тамо, онда претражује сваки директоријум у променљивој љуске ПИТХОНПАТХ.
  • Ако и то не успе, Питхон проверава подразумевану путању.

Модул тражи путању сачувану у системском модулу као променљиву сис.патх. Променљива сис.патх садржи тренутни директоријум, ПИТХОНПАТХ и подразумевану вредност која зависи од инсталације.

Функције лоцалс() и глобалс().

Функције лоцалс() и глобалс() се користе за враћање имена у локалном и глобалном именском простору који зависе од локације одакле су позвани.

Ако је глобалс() позван из функције, он враћа сва имена којима се глобално може приступити из те функције.

Ако се лоцалс() позове из функције, вратиће сва имена којима се може приступити локално из те функције.

Тип повратка обе функције је речник. Због тога се имена могу издвојити помоћу функције кеис().

Именски простори и опсег

Променљиве су имена која се пресликавају на објекте. Именски простор је речник имена променљивих и њихових одговарајућих објеката.

Питхон изјава може приступити променљивим у локалном простору имена. Ако глобална и локална променљива имају слично име у глобалном именском простору, локална променљива засењује глобалну променљиву.

Свака функција има свој локални именски простор. Методе класа такође прате исто правило опсега као и друге обичне функције.

Да бисте доделили вредност глобалној променљивој, требало би да користите глобални израз.

На пример, дефинишемо променљиву Монеи у глобалном именском простору. У оквиру функције Новац додељујемо Новцу вредност. Стога Питхон претпоставља новац као локалну променљиву. Међутим, приступили смо вредности локалне променљиве Монеи пре него што смо је поставили, тако да је резултат УнбоундЛоцалЕррор. Декоментарисање глобалне изјаве решава проблем.

Функција дир().

Функција дир() је уграђена функција која враћа сортирану листу стрингова који садрже имена дефинисана модулом. Листа садржи сва имена модула, променљивих и функција дефинисаних у модулу

Функција релоад().

Када се модул увози, код на највишем нивоу модула се извршава само једном. Стога, ако желите поново да извршите код највишег нивоа у модулу, можете користити функцију релоад(). Функција релоад() поново увози претходно увезени модул.

СИНТАКСА

|_+_|