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

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

30. октобар 2021

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

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

Класе и објекти

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

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

    Класа− То је кориснички дефинисан прототип за објекат који дефинише скуп атрибута који карактеришу било који објекат класе. Променљиве класе и променљиве инстанце и методе, којима се приступа путем нотације тачке.Објекат− То је инстанца структуре података која је дефинисана својом класом. Објекат садржи и променљиве класе и променљиве инстанце.Променљива класе− То је променљива коју деле све инстанце класе. Променљива класе је дефинисана унутар класе, али ван било које методе класе. Променљиве класе се не користе као честе променљиве инстанце.Члан података− то је променљива инстанце која држи податке повезане са класом и њеним објектима.Променљива инстанце− То је променљива која се обично дефинише унутар методе и припада тренутној инстанци класе.Преоптерећење функције− Додељивање једног или више понашања одређеној функцији. Извршена операција се разликује у зависности од врсте објеката или аргумената који су укључени.Преоптерећење оператера− Додељивање једне или више функција одређеном оператеру.Наслеђе− То је пренос карактеристика класе на друге класе које су изведене из ње.Метод− То је посебна врста функције која је дефинисана у дефиницији класе.

Креирање часова

Класа креира нову дефиницију класе. Након имена класе следи кључна реч цласс праћена двотачком.

СИНТАКСА

|_+_|
  • Класа се састоји од низа документације, којој се приступа преко ЦлассНаме.__доц__.
  • Цласс_суите се састоји од наредби компоненти које дефинишу чланове класе, атрибуте података и функције.
имг 617дд27284418

Цласс Објецтс

Објекат је инстанца класе. Класа је као нацрт док је копија класе са стварним вредностима.

имг 617дд272д3ац5

ОУТПУТ

имг 617дд273361бц

Приступ атрибутима

Атрибутима објекта можете приступити помоћу оператора тачке са објектом.

  • гетаттр(обј, наме[, дефаулт]) – Користи се за приступ атрибуту објекта.
  • хасаттр (обј,наме) – Користи се за проверу да ли атрибут постоји или не.
  • сетаттр(обј,наме,валуе) – Користи се за постављање атрибута. Ако атрибут не постоји, онда би био креиран.
  • делаттр(обј, наме) – Користи се за брисање атрибута.

Уграђени атрибути класе

Свака Питхон класа наставља да прати уграђене атрибуте и приступа им се помоћу оператора тачке као и сваком другом атрибуту –

    __дицт__− То је речник који садржи именски простор класе.__доц__− То је низ документације класе или ниједан, ако је недефинисан.__име__− Назив разреда.__модул__− То је назив модула у коме је дефинисана класа. Овај атрибут је __маин__ у интерактивном режиму.__базе__− Празан тупле који садржи основну класу, по редоследу њиховог појављивања у листи основних класа.

Отпад

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

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

Број референци објекта се повећава када му се додели ново име или се стави у контејнер (листу, тупле или речник). Број референци објекта се смањује када се избрише са оф , њена референца је поново додељена или њена референца излази ван опсега. Када број референци објекта достигне нулу, питхон га аутоматски прикупља.

имг 617дд273789ц9

ОУТПУТ

имг 617дд273ц29аф

Наслеђивање класа

Такође можете креирати класу тако што ћете је извести из претходне класе тако што ћете поменути родитељску класу у загради иза имена нове класе.

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

СИНТАКСА

|_+_|

Оверридинг Метходс

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

да не Метод Опис
једна__репр__( селф )Евалуабле стринг репрезентација
два__дел__( селф )Деструктор, брише објекат
3__цмп__ ( селф, к )Поређење објеката
4__инит__ ( селф [,аргс...] )Конструктор (са било којим опционим аргументима)
5__стр__( селф )Приказ стрингова за штампање

Регуларни изрази

Регуларни израз је јединствени низ знакова који вам помаже да пронађете или упарите низове низова помоћу посебне синтаксе која се држи у обрасцу. Регуларни изрази се широко користе у УНИКС свету.

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

Функција подударања

Покушава да усклади РЕ образац са низом са опционим заставицама.

СИНТАКСА

|_+_|
да не Параметар Опис
једназаставеОн специфицира различите заставице помоћу битног ИЛИ (|).
двашаблонТо је регуларни израз који треба упарити.
3низТо је стринг, који се тражи да би одговарао шаблону на почетку низа.

Функција претраге

Он тражи прво појављивање РЕ обрасца унутар низа са опционим ознакама.

СИНТАКСА

|_+_|
да не Параметар Опис
једназаставеОн специфицира различите заставице користећи битни ОР (|).
двашаблонТо је регуларни израз који треба упарити.
3низТо је стринг, који се тражи да би одговарао шаблону на почетку низа.

Модификатори регуларног израза

да не Параметар Опис
једнаре.МТо чини да се $ подудара са крајем реда и чини да се ^ подудара са почетком било ког реда.
дваре.ЛТумачи речи према тренутном локалитету. Тумачење утиче на алфабетску групу као и на понашање границе речи.
3ре.УОн тумачи слова у складу са скупом знакова Уницоде. Заставица утиче на понашање в, В, б, Б.
4ре.КсОмогућава слаткију синтаксу регуларног израза. Игнорише размак и третира непромењени # као маркер коментара.
5ре.СТо чини да тачка одговара било ком карактеру, укључујући и нови ред.
6ре.ИОбавља подударање без обзира на велика и мала слова.

Обрасци регуларног израза

да не Шаблон Опис
једна.Одговара једном знаку осим новог реда.
дваа| бОдговара или а или б.
3[…]Поклапа се са једним знаком у заградама.
4[^…]Поклапа се са једним знаком који није у заградама
5$Поклапа се са крајем реда.
6^Поклапа се са почетком реда.
7ре*Поклапа се са 0 или више појављивања претходног израза.
8ре+Поклапа се са једном или више појављивања претходног израза.
9ре?Поклапа се са 0 или 1 појављивањем претходног израза.
10ре{ н}Поклапа се са тачно н бројем појављивања претходног израза.
Једанаестре{ н, м}Поклапа се са најмање н и м појављивања претходног израза.
12ре{ н,}Поклапа се са н или више појављивања претходног израза.
13(поновно)Групише регуларне изразе и памти подударни текст.
14(?имк)Привремено укључује и, м или к опције унутар регуларног израза.
петнаест(?имк: ре)Привремено укључује и, м или к опције унутар заграда.
16?: ре)Групише регуларне изразе без памћења подударног текста.
17(?-имк)Привремено искључује и, м или к опције унутар регуларног израза.
18(?-имк: ре)Привремено искључује и, м или к опције унутар заграда.
19(?#…)Коментар.
двадесет(?= поново)Одређује позицију помоћу шаблона. Нема опсег.
двадесет један(?! ре)Он одређује позицију користећи негацију узорка. нема опсег.
22(?> ре)Поклапа се са независним шаблоном без повлачења.
23ИнПоклапа се са знаковима речи.
24ИНПоклапа се са знаковима који нису речи.
25СПоклапа се без размака.
26сПоклапа се са размаком.
27ДПоклапа се са нецифрама.
28дПоклапа се са цифрама. Еквивалентно [0-9].
2910Одговара н-том груписаном подизразу ако се већ подудара. Иначе се односи на октални приказ кода знакова.
30ДОПоклапа се са почетком низа.
31ВИТХОдговара крају низа. Ако постоји нови ред, он се подудара непосредно пре новог реда.
32витхОдговара крају низа.
33ГПоклапа се са тачком где је последњи меч завршен.
3. 4н, т итд.Поклапа се са новим редовима, враћањима на ладицу, табовима итд.
35БПоклапа се са границама које нису речи.
361…9Одговара н-том груписаном подизразу.
37бПоклапа се са бацкспаце (0к08) када је унутар заграда.

Цхарацтер Цлассес

да не Пример Опис
једна[аеиоу]Поклапа се са било којим малим самогласником
два[0-9]Одговара било којој цифри; исто као [0123456789]
3[Пп] итхонПоклапа се са Питхон-ом или питхон-ом
4[а-з]Поклапа се са било којим малим АСЦИИ словом
5трљати [ие]Одговара рубину или рубину
6[^аеиоу]Поклапа се са било чим осим са малим самогласником
7[^0-9]Одговара било чему осим цифре
8[а-зА-З0-9]Поклапа се са било којим од горе наведених
9[А-З]Поклапа се са било којим великим АСЦИИ словом
10.Одговара једном знаку осим новог реда.
ЈеданаестИнПоклапа се са знаковима речи.
12ИНПоклапа се са знаковима који нису речи.
13СПоклапа се без размака.
14сПоклапа се са размаком.
петнаестДПоклапа се са нецифрама.
16дПоклапа се са цифрама. Еквивалентно [0-9].

Случајеви понављања

да не Пример Опис
једнарубин+Одговара руб плус 1 или више год
дварубин*Одговара руб плус 0 или више и
3рубин?Одговара рубу или рубину: и је опционо
4д{3}Поклапа се са тачно 3 цифре
5д{3,}Одговара 3 или више цифара
6д{3,5}Поклапа се са 3, 4 или 5 цифара

Анцхорс

да не Пример Опис
једнаПајтон ЗПоклапа се са Питхон-ом на крају стринга.
дваПитхон$Поклапа се са Питхон-ом на крају стринга или линије.
3^ПитхонПоклапа се са Питхон-ом на почетку стринга или унутрашње линије.
4 АПитхонПоклапа се са Питхон-ом на почетку стринга.
5Питхон(?=!)Поклапа се са Питхон-ом ако следи знак узвика.
6Питхон(?!!)Одговара Питхон-у, ако није праћен знаком узвика.
7бПитхонбПоклапа се са Питхон-ом на граници речи.