КампутарыПраграмаванне

Python - што гэта? Высокаўзроўневы мова праграмавання

Python з'яўляецца універсальным мовай высокага ўзроўню, які можа быць пашыраны і убудаваны. Ён, напрыклад, уваходзіць у камплект прыкладанняў як інструмент напісання макрасаў. Гэта робіць Python разумным выбарам для многіх задач праграмавання, вялікіх і не вельмі, і не такім удалым для невялікага ліку вылічальных задач.

Дзе лепш выкарыстоўваць?

Мова Python ідэальна падыходзіць для праектаў, якія патрабуюць хуткай распрацоўкі. Ён падтрымлівае некалькі парадыгмаў праграмавання, што добра для праграм, якія патрабуюць гнуткасці. А наяўнасць мноства пакетаў і модуляў забяспечвае ўніверсальнасць і эканоміць час.

Гвіда ван Россум - стваральнік Python, ласкава ганараваны супольнасцю звання «вялікадушны пажыццёвы дыктатар». У канцы 1980-х Гвіда падабаліся асаблівасці некаторых моў праграмавання, але ні адзін з іх не валодаў усімі магчымасцямі, якія б яму хацелася мець. У прыватнасці мова павінна быў валодаць наступнымі характарыстыкамі.

мова сцэнарыяў

Сцэнар ўяўляе сабой праграму, якая кіруе іншымі праграмамі. Мовы сцэнарыяў падыходзяць для хуткай распрацоўкі і прототипирования, таму што яны добра спраўляюцца з перадачай дадзеных ад аднаго кампанента да іншага і пазбаўляюць праграміста ад такіх клапотна рэчаў, як кіраванне памяццю.

Супольнасць карыстальнікаў аддае перавагу называць Python дынамічным мовай праграмавання.

Водступ для групавання аператараў

Python вызначае прыналежнасць выразаў да адной групе з дапамогай водступаў. Такая група называецца блокам кода. У іншых мовах для гэтага выкарыстоўваецца іншы сінтаксіс або знакі прыпынку. Напрыклад, у C сімвал сімвал {пазначае пачатак і} - канец паслядоўнасці каманд. Наяўнасць водступаў лічыцца добрай практыкай і ў іншых мовах, але адным з першых, у якім захаванне водступаў забяспечваецца прымусова, быў Python. Што гэта дае? Водступ робіць код больш зручным для чытання, а кодавыя блокі патрабуюць менш пазначэнняў іх пачатку і канца і знакаў прыпынку, якія можна выпадкова прапусціць. Усё гэта вядзе да меншай колькасці памылак.

Тыпы дадзеных высокага ўзроўню

Кампутары захоўваюць дадзеныя ў адзінках і нулях, але людзі маюць патрэбу ў больш складаных формах, такіх як тэкст. Аб мове, які падтрымлівае складаныя дадзеныя, кажуць, што ён падтрымлівае тыпы дадзеных высокага ўзроўню. Такімі тыпамі дадзеных лёгка апераваць. Напрыклад, у Python радкі можна падзяляць, аб'ядноўваць, пераводзіць у верхні ці ніжні рэгістр, у іх можна вырабляць пошук і т. Д. Высокаўзроўневы тыпы дадзеных, такія як спісы і слоўнікі, якія могуць захоўваць і іншыя дадзеныя, валодаюць значна вялікімі функцыянальнымі магчымасцямі, чым іншыя мовы.

пашыральнасць

Пашыраецца мова праграмавання можа быць дапоўнены. Такія мовы з'яўляюцца вельмі магутнымі, таму што дапаўненні робяць іх прыдатнымі для мноства ужыванняў і аперацыйных сістэм. Пашырэння могуць дадаваць тыпы дадзеных або канцэпцыі, модулі і ўбудовы. Мова Python пашыраецца некалькімі спосабамі. Асноўная група праграмістаў працуе над яго зьменай і паляпшэннем, а сотні іншых пішуць модулі для канкрэтных мэтаў.

інтэрпрэтацыя

Інтэрпрэтаваная мова выконваюцца непасрэдна з зыходнага кода, напісанага людзьмі, а праграмы, напісаныя на кампіляваных мовах, такіх як C ++, павінны быць пераведзены ў машынны код. Інтэрпрэтаваная мова павальнейшыя, так як трансляцыя адбываецца на лета, але напісанне праграм і іх адладка адбываецца хутчэй, так як адсутнічае неабходнасць чакаць завяршэння працы кампілятара. Яны лягчэй пераносяцца на розныя платформы.

Можна спрачацца наконт таго, ці з'яўляецца Python інтэрпрэтаванай або кампіляваным мовай. Хоць у многіх адносінах ён працуе як інтэрпрэтаваны, перад выкананнем яго код кампілюецца (як у Java), і многія яго кампаненты працуюць на поўнай хуткасці машыны, бо напісаны на C.

Гвіда пачаў пісаць Python падчас калядных вакацый ў 1989 г., і на працягу наступнага года ён дапрацоўваў мову на аснове водгукаў сваіх калегаў. Шырокая публіка ўбачыла вынік у лютым 1991 г., калі ён быў размешчаны ў адной з навінавых груп Usenet.

Python для пачаткоўцаў

Для таго каб пачаць пісаць праграмы на Python, трэба яго ўсталяваць. У версій Python 2.7 і Python 3.5 ёсць істотныя адрозненні, з-за якіх праграмы, напісаныя на іх, з'яўляюцца несумяшчальнымі.

У кампутарах «Макінтош» гэтая мова з'яўляецца прадусталяваны, і яго версія залежыць ад узросту АС. Пры працы ў Windows прыйдзецца самастойна ўсталяваць Python. Файлы ўсталявальнага пакета можна выбраць на сайце python.org.

Два спосабу ўзаемадзеяння

Адной з прычын прастаты, якой адрозніваецца праграмаванне на Python, з'яўляецца тое, што ён пастаўляецца з інструментамі, якія дапамогуць распрацоўваць, пісаць і адладжваць праграмы.

У інтэрактыўным рэжыме каманды ўводзяцца па адным радку за адзін раз, амаль гэтак жа, як аперацыйная сістэма (абалонка) прымае каманды з каманднага радка. Таксама можна ствараць кароткія шматрадковых праграмы або імпартаваць код з тэкставых файлаў або ўбудаваных модуляў Python. Для пачаткоўцаў будзе карысна ведаць, што інтэрактыўны рэжым ўключае шырокую даведачную сістэму. Гэта зручны спосаб вывучэння магчымасцяў мовы праграмавання.

Асяроддзе распрацоўкі IDLE ўключае інтэрактыўны рэжым і прылады для напісання і запуску праграм, а таксама сістэму адсочвання імёнаў. Серада напісана на Python і дэманструе шырокія магчымасці мовы.

інтэрактыўны рэжым

Тут можна рабіць практычна ўсё, што можна зрабіць у праграме, нават пісаць шматрадковы код. Дадзены рэжым можа служыць:

  • пясочніцы для бяспечных эксперыментаў;
  • асяроддзем, якая дазваляе вывучаць праграмаванне на Python;
  • інструментам пошуку і выпраўлення памылак.

Варта ўлічыць, што захаваць уведзенае ў інтэрактыўным рэжыме немагчыма. Для гэтага неабходна запісаць копію кода і вынікі ў файле.

Інтэрактыўны рэжым можна выкарыстоўваць у якасці калькулятара, маніпуляваць тэкстам і прысвойваць значэння пераменным. Таксама можна імпартаваць модулі, функцыі або часткі праграм для іх тэставання. Гэта дапамагае эксперыментаваць з аб'ектамі Python без напісання доўгіх праграм і адладжваць праграмы шляхам іх імпартаваць іх частак па адной за раз.

Праца ў інтэрактыўным рэжыме

Пасля запуску Python у акне тэрмінала адлюструецца інфармацыя аб бягучай версіі праграмы, даце яе выпуску, некалькі падказак далейшых дзеянняў і запрашэнне ўводу >>>.

Для працы ў інтэрактыўным рэжыме варта ўвесці каманду або выраз і націснуць клавішу ўводу.

Python інтэрпрэтуе увод і адрэагуе, калі набранае патрабуе адказу, ці інтэрпрэтатар яго не разумее.

Наступная каманда надрукуе радок. Паколькі месца друку не пазначана, выснова адбываецца на экран.

  • >>> print "Прывітанне, свет!"
  • Прывітанне, свет!

Гэтая адзіная радок з'яўляецца цэлай праграмай! У інтэрактыўным рэжыме Python апрацоўвае кожную радок ўведзенага кода пасля націску клавішы ўводу, і вынік з'яўляецца ніжэй.

Прагляд інфармацыі аб аб'екце

У інтэрактыўным рэжыме ёсць два спосабу прагляду інфармацыі аб аб'екце:

  • ўвесці аб'ект (ці яго імя) і націснуць клавішу ўводу;
  • ўвесці каманду print і аб'ект (ці яго імя) і націснуць Enter.

Вынік залежыць ад аб'екта.

Пры выкарыстанні некаторых тыпаў дадзеных (цэлых і спісаў, напрыклад) гэтыя два метаду даюць аднолькавы вынік:

  • >>> х = [3,2]
  • >>> х
  • [3, 2]
  • >>> print х
  • [3, 2]

Для радкоў вынік набору каманды «print імя» трохі адрозніваецца ад выніку, атрыманага для ўводу імя. У першым выпадку значэнне заключаецца ў двукоссі, а ў другім - не:

  • >>> x = "MyString"
  • >>> х
  • "MyString"
  • >>> print х
  • MyString

Калі імя адносіцца да блоку кода (напрыклад, функцыі, модулю або асобніку класа), увод імя прадаставіць інфармацыю пра выгляд дадзеных, імя і месцы захоўвання.

У наступным прыкладзе ствараецца клас з імем Message і выводзіцца інфармацыя аб

ім:

  • >>> class Message:
  • ... pass
  • ...
  • >>> Message
  • >>> print Message
  • __main __. Message

радкі

У Python радкі з'яўляюцца паслядоўнасцямі сімвалаў. Радковы литерал ствараецца шляхам заключэння знакаў у адзінарныя ( '), двайныя ( ") ці патройныя (' '' ці" "") двукоссе. У прыведзеным прыкладзе прысвойваецца значэнне зменнай x:

  • >>> x = "MyString"

Радок Python мае некалькі ўбудаваных магчымасцяў. Адной з іх з'яўляецца здольнасць вярнуць сваю копію з усімі малымі літарамі. Гэтыя магчымасці вядомыя як метады. Каб выклікаць метад аб'екта, варта выкарыстоўваць кропкавы сінтаксіс. Гэта значыць пасля ўводу імя зменнай, якая ў дадзеным выпадку з'яўляецца спасылкай на аб'ект радка, трэба паставіць аператар-кропку (.), А затым назва метаду з наступным адкрыццём і закрыццём дужкі:

  • >>> x.lower ()
  • "Mystring"

Можна атрымаць частку радка з дапамогай аператара індэксавання s [i]. Індэксацыя пачынаецца з нуля, так што s [0] вяртае першы знак у радку, s [1] вяртае другі, і гэтак далей:

  • >>> x [0]
  • 'M'
  • >>> x [1]
  • 'Y'

Радковыя метады працуюць як са звычайнымі радкамі, так і з "Юнікодам". Яны вырабляюць наступныя дзеянні:

  • змена рэгістра (capitalize, upper, lower, swapcase, title);
  • падлік (count);
  • змена кадоўкі (encode, decode);
  • пошук і замену (find, replace, rfind, index, rindex, translate);
  • правяраюць выкананне ўмоў (startswith, endswith, isalnum, isalpha, isdigit, islower, isspace, istitle, isupper);
  • аб'ядноўваюць і падзяляюць (join, partition, rpartition, split, splitlines);
  • фарматуецца (center, ljust, lstrip, rstring, rjust, strip, zfill, expandtabs).

Python: спісы

Калі радкі Python абмежаваныя сімваламі, то спісы якіх-небудзь абмежаванняў не маюць. Яны ўяўляюць сабой спарадкаваныя паслядоўнасці адвольных аб'ектаў, уключаючы іншыя спісы. Акрамя таго, можна дадаваць, выдаляць і замяняць іх элементы. Шэраг аб'ектаў, падзеленых коскамі ўнутры квадратных дужак, і ёсць спіс Python. Што гэта сабой уяўляе, паказана ніжэй - тут прыведзены прыклады дадзеных і аперацый з імі:

  • >>> bases = [ 'A', 'C', 'G', 'T']
  • >>> bases
  • [ 'A', 'C', 'G', 'T']
  • >>> bases.append ( 'U')
  • >>> bases
  • [ 'A', 'C', 'G', 'T', 'U']
  • >>> bases.reverse ()
  • >>> bases
  • [ 'U', 'T', 'G', 'C', 'A']
  • >>> bases [0]
  • 'U'
  • >>> bases [1]
  • 'T'
  • >>> bases.remove ( 'U')
  • >>> bases
  • [ 'T', 'G', 'C', 'A']
  • >>> bases.sort ()
  • >>> bases
  • [ 'A', 'C', 'G', 'T']

У гэтым прыкладзе быў створаны спіс асобных знакаў. Затым у канец быў дададзены элемент, звернуты парадак элементаў, вынятыя элементы па пазіцыі іх індэкса, быў выдалены элемент са значэннем 'U' і праведзена сартаванне элементаў. Выдаленне элемента з спісу ілюструе сітуацыю, калі метадзе remove () неабходна прадаставіць дадатковую інфармацыю, а менавіта значэнне, якое варта выдаліць.

Акрамя метадаў, падобных remove (), Python мае яшчэ адну вельмі падобнай магчымасцю, званай функцыяй. Адзінае адрозненне паміж функцыяй і метадам з'яўляецца тое, што першая не звязана з канкрэтным аб'ектам.

Python: функцыі

Функцыі выконваюць дзеянні над адным ці некалькімі значэннямі і вяртаюць вынік. Вялікая іх колькасць ўбудавана ў Python. Прыклады ўбудаваных функцый:

  • len () - вяртае колькасць элементаў у паслядоўнасці;
  • dir () - вяртае спіс радкоў, якія прадстаўляюць атрыбуты аб'екта;
  • list () - вяртае новы спіс, ініцыялізаваць з якой-небудзь іншай паслядоўнасці.
  • >>> help (round)
  • Help on built-in function round:
  • round (...)
  • round (number [, ndigits]) -> floating point number

Таксама ёсць магчымасць вызначыць свае ўласныя функцыі.

Функцыі, пэўныя карыстальнікам

Працэс стварэння ўласнай Python-функцыі такой. Першы радок пачынаецца з ключавога слова def, за якім ідзе імя функцыі і аргументы (чаканыя ўваходныя значэння), заключаныя ў дужкі, і заканчваецца двукроп'ем. Наступныя каманды складаюць цела функцыі і павінны мець водступ. Калі каментар знаходзіцца спачатку цела функцыі, ён становіцца часткай яе дакументацыі. Апошняя радок функцыі вяртае вынік:

  • >>> def transcribe (dna):
  • ... "" "Return dna string as rna string." ""
  • ... return dna.replace ( 'T', 'U')
  • ...
  • >>> transcribe ( 'CCGGAAGAGCTTACTTAG')
  • 'CCGGAAGAGCUUACUUAG'

У гэтым прыкладзе была створана функцыя пад назвай transcribe, якая чакае радок, якая прадстаўляе паслядоўнасць ДНК. Метад replace () вяртае копію зыходнай радкі з заменай усіх уваходжанняў аднаго знака на іншы. Тры радкі кода дазволілі транскрыбаваць ДНК у РНК. Зваротная функцыя выглядае так:

  • >>> def reverse (s):
  • ... "" "Return the sequence string in reverse order." ""
  • ... letters = list (s)
  • ... letters.reverse ()
  • ... return '' .join (letters)
  • ...
  • >>> reverse ( 'CCGGAAGAGCTTACTTAG')
  • 'GATTCATTCGAGAAGGCC'

Функцыя reverse прымае радок, стварае спіс, заснаваны на ёй, і змяняе яго парадак. Зараз трэба зрабіць адваротнае пераўтварэнне. Аб'ект мае метад join (), які аб'ядноўвае спіс, падзяляючы кожны яго элемент значэннем радка. Так як падзельнік не патрэбны, метад выкарыстоўваецца на пусты радку, прадстаўленай двума двукоссямі ( '' або "").

слоўнікі

А слоўнік Python - што гэта? Ён мае тыя ж перавагі, што і звычайны папяровы слоўнік. Дазваляе хутка знайсці патрэбнае значэнне (прысуд), звязанае з ключом (словам). Слоўнікі складаюцца ў фігурныя дужкі і ўтрымліваюць падзеленую коскамі паслядоўнасць пар ключ-значэнне. Слоўнікі ня ўпарадкаваны. Замест гэтага слоўнікавыя значэння даступныя праз іх ключ, а не іх пазіцыю.

  • >>> basecomplement = { 'A': 'T', 'C': 'G', 'T': 'A', 'G': 'C'}
  • >>> basecomplement.keys ()
  • [ 'A', 'C', 'T', 'G']
  • >>> basecomplement.values ()
  • [ 'T', 'G', 'A', 'C']
  • >>> basecomplement [ 'A']
  • 'T'

класы

Для таго каб ствараць свае ўласныя аб'екты, неабходна вызначыць свайго роду шаблон, званы класам. У Python для гэтага служыць аператар class, за якім варта імя і двукроп'е. Цела вызначэння класа змяшчае ўласцівасці і метады, якія будуць даступныя для ўсіх асобнікаў аб'ектаў, заснаваных на гэтым класе.

перавагі

Большасць моў праграмавання прапануюць зручныя функцыі, але ні адзін з іх не валодае такой камбінацыяй зручнасці і магутнасці, якую прапануе Python. Што гэта за перавагі? Вось некаторыя з іх:

  • Мова можа быць ўбудаваны ў іншыя прыкладання і выкарыстаны для стварэння макрасаў. Напрыклад, у Paint Shop Pro 8 і пазнейшых версіях ён з'яўляецца мовай сцэнарыяў.
  • Python бясплатны для выкарыстання і распаўсюджвання, на камерцыйнай аснове або няма.
  • Мова валодае магутнымі магчымасцямі па апрацоўцы і пошуку тэксту, што выкарыстоўваецца ў прыкладаннях, якія працуюць з вялікай колькасцю тэкставай інфармацыі.
  • На ім можна ствараць вялікія прыкладання без неабходнасці праверкі запускаюцца праграм.
  • Python падтрымлівае тэставанне і адладку асобных модуляў і цэлых праграм.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 be.unansea.com. Theme powered by WordPress.