Samaynta Python iyo Bash Friendship: Siidaynta python-shell iyo maktabadaha smart-env v. 1.0.1

Maalin wanaagsan qof walba!

29 Febraayo 2020 Febraayo Siideynta-yar ee rasmiga ah ee maktabadaha ayaa dhacay smart-env и python-shell. Kuwa aan aqoonta u lahayn, waxaan kuu soo jeedinayaa inaad akhrido marka hore boostada ugu horeysa.

Marka la soo koobo, isbeddellada waxaa ka mid ah dhammaystirka amarka, awoodaha la ballaariyay ee amarrada socodsiinta, qaar dib-u-habeyn ah iyo hagaajinta cayayaanka.

Faahfaahinta fadlan eeg bisad

Maxaa ka cusub Python-shell?

Waxaan isla markiiba ku bilaabi doonaa macmacaan.

Dhamaystirka amarka

Ogow - way ku habboon tahay marka tafatiraha/IDE/terminalku ku weydiiyo magaca amarka, iyo mararka qaarkood xitaa cabbirrada wicitaanka? Markaa python-shell ayaa si tartiib tartiib ah u samaynaysa horumar xagga bixinta hawlo la mid ah. Sababtoo ah xaqiiqda ah in beeraha fasalka Shell ee hoostiisa ay yihiin de-facto ma aha beerahooda (__getattr__ meel kasta), dhamaystirka autocompletion ayaa sidoo kale laga abuuray xoq (iyada oo la kordhiyo habka __dir__, siday u kala horreeyaan). Autocompletion hadda waxay ka shaqeysaa deegaanka BPython iyo IPython. Dabcan, waxaan jeclaan lahaa inaan arko isdhexgalka oo leh alaabooyin badan oo la ixtiraamo sida PyCharm, iyo fursadaha fulinta ayaa lagu baran doonaa jihadan.

Ku darida Guryaha

Iyada oo qayb ka ah sii deynta, fasalka Shell waxa uu helay hanti cusub oo ugu dambeysay. Baahida loo qabo waxay kacday sababtoo ah markii ShellException lagu tuuray amar leh koodka soo celinta eber, shayga Taliska lagama soo celin __call __ () wicitaanka shayga taliska. Hadda waxaa jirta fursad tan lagu sameeyo:

try:
    command = Shell.touch('/foo.txt')
except ShellException:
    command = Shell.last_command

Liiska sifooyinka shayga taliska ayaa sidoo kale balaariyay. Waxaa lagu daray goob khaladaad ah oo ku soo celisa soo saarista amarka marinka qaladka.

Ku socodsiinta amarada leh magacyo Python aan sax ahayn

Ku dhawaad ​​nidaam kastaa wuxuu leeyahay ugu yaraan hal barnaamij oo aan magaciisa ku haboonayn aqoonsi ahaan Python (tusaale ahaan, utility 2to3 ee si fiican loo yaqaan). La wac iyada

Shell.2to3()

Haddii aysan shaqayn, turjumaanku uma oggolaan doono in la soo maro.
Xalku waa in amarka loo waco hab wareeg ah:

Shell("2to3")  # возвращает объект команды

Waxaa xusid mudan in si la mid ah aad ku socodsiin karto amarro sax ah marka laga eego dhanka aragtida turjubaanka, taasoo ka dhigeysa fursadda lagu abuuro qoraallo dabacsan sida

cmd = "python{}".format(sys.version_info[0])
Shell(cmd)(*args, **kwargs)

Isbeddel yar

  • Hababka __repr__ () iyo __str__() ee shayga fasalka taliska ayaa la hirgeliyey, kuwaas oo hadda soo saaraya qiyamka dareen (amar leh cabbirro iyo wax-soo-saarkeeda stdout, siday u kala horreeyaan).
  • Hagaajinta koodka yar.
  • Ku darida caymiska imtixaanka, iyo sidoo kale dib u habeynta kuwa jira.
  • Ku daridda fasallada hab-hoosaadka iyo habka, ujeeddadeedu waa in la abuuro heerar dheeraad ah oo la taaban karo marka la shaqaynayo habka-hoosaadka. Inta badan loo baahan yahay si loo baabi'iyo nuqul ka mid ah code marka la shaqaynayo Python 2/3, laakiin waxay suurtogal u tahay inay bixiso gunnooyin kale sidoo kale.

Maxaa ka cusub smart-env?

Si ka duwan python-shell, waxaa jiray isbeddello yar oo ku yimid maktabadda smart-env. Sababta tani waa mid fudud - la'aanta wakhti firaaqo ah, inta lagu guda jiro qaar ka mid ah horumarinta suurtagalka ah (tusaale ahaan, dhamaystirka doorsoomayaasha deegaanka) ayaa loo wareejiyay sii deynta soo socota.

Dhab ahaantii, isbeddellada soo socda ayaa lagu sameeyay maktabadda:

  • Hagaajinta koodka yar.
  • Dib u soo celinta
  • Dib u habeynta iyo hagaajinta imtixaanada jira.

Qorshayaasha siidaynta xiga

python-shell maktabadda

  • Ku darida taageerada wicitaanada amarka aan xannibin (isbarbardhigga fulinta).

maktabadda smart-env

  • Hirgelinta otomaatiga ah ee doorsoomayaasha deegaanka ee fasalka ENV.
  • Taageerada hawlwadeenka si loo hubiyo jiritaanka doorsoome env.
  • Hirgelinta taageerada hawlaha str() iyo repr() ee fasalka ENV.

Taariikhaha la sii daayo soo socda ayaa lagu sii shaacin doonaa kanaalada isgaadhsiinta ee soo socda:

Source: www.habr.com

Add a comment