Ime Python na Bash Enyi: Mwepụta nke ụlọ akwụkwọ Python-shell na smart-env v. 1.0.1

ụbọchị ọma onye ọ bụla!

29 February 2020 afọ Mwepụta obere ụlọ akwụkwọ gọọmentị mere smart-env и python-shell. Maka ndị na-amaghị, a na m atụ aro ka ị buru ụzọ gụọ ya mbụ post.

Na nkenke, mgbanwe ndị a gụnyere mmecha iwu, ikike ịgbasawanye maka ịgba ọsọ iwu, ụfọdụ nrụgharị na ndozi ahụhụ.

Maka nkọwa biko hụ pusi.

Kedu ihe dị ọhụrụ na Python-shell?

Aga m eji eji megharịa ọnụ bido ozugbo.

Mmecha iwu

Kwekọrịtara - ọ dị mma mgbe onye nchịkọta akụkọ/IDE/terminal kpaliri gị maka aha iwu ahụ, yana mgbe ụfọdụ ọbụlagodi paramita oku? Ya mere, python-shell na-eji nwayọọ nwayọọ na-enwe ọganihu n'inye ọrụ yiri ya. N'ihi na eziokwu na ubi nke Shell klas n'okpuru mkpuchi bụ de-facto bụghị ubi ya (na ubiquitous __getattr__), autocompletion e kere si ọkọ (site overloading __dir__ usoro, karị). Autocompletion na-arụ ọrụ ugbu a na gburugburu BPython na IPython. N'ezie, ọ ga-amasị m ịhụ njikọta na ngwaahịa ndị ọzọ na-asọpụrụ dị ka PyCharm, a na-amụkwa ohere mmejuputa na ntụziaka a.

Na-agbakwụnye Njirimara

Dịka akụkụ nke mwepụta ahụ, klaasị Shell nwetara akụrụngwa ikpeazụ_iwu ọhụrụ. Mkpa ya bilitere n'ihi na mgbe a tụbara ShellException site n'iwu nke nwere koodu nkwụghachi efu na-abụghị efu, anabataghị ihe iwu ahụ site na oku __call __ () na ihe iwu ahụ. Ugbu a enwere ohere ime nke a:

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

Ndepụta akụrụngwa nke ihe iwu agbasawanyekwala. Agbakwunyere ubi mperi na-eweghachite mmepụta iwu na iyi mperi.

Na-agba ọsọ iwu na aha Python ezighi ezi

Ihe fọrọ nke nta ka ọ bụrụ usoro ọ bụla nwere opekata mpe otu mmemme aha ya na-adabaghị dị ka njirimara na Python (dịka ọmụmaatụ, ọrụ 2to3 ama ama). Kpọọ ya na

Shell.2to3()

Ọ bụrụ na ọ naghị arụ ọrụ, onye ntụgharị agaghị ekwe ka ọ gafee.
Ihe ngwọta ya bụ ịkpọ iwu ahụ n'ụzọ gbara gburugburu:

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

Ọ dị mma ịmara na n'otu ụzọ ahụ ị nwere ike ịgba ọsọ iwu ndị dị irè site n'echiche nke onye ntụgharị okwu, nke na-ahapụ ohere ịmepụta edemede na-agbanwe agbanwe dị ka.

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

Obere mgbanwe

  • Emejuputala usoro __repr__ () na __str__ () nke ihe klas Command, nke na-emepụta ụkpụrụ nghọta (iwu nwere paramita na mmepụta stdout ya, n'otu n'otu).
  • Ndozi koodu obere.
  • Ịgbakwunye mkpuchi ule, yana ịhazigharị ndị dị adị.
  • Na-agbakwụnye klaasị Subprocess na Usoro, ebumnuche ya bụ ịmepụta ọkwa ọzọ nke abstraction mgbe ị na-arụ ọrụ na modul nke subprocess. A na-achọkarị ikpochapụ koodu oyiri mgbe ị na-arụ ọrụ Python 2/3, mana ọ nwere ike ịnyekwa ego ndị ọzọ.

Kedu ihe dị ọhụrụ na smart-env?

N'adịghị ka python-shell, enweela obere mgbanwe na ọba akwụkwọ smart-env. Ihe kpatara nke a dị mfe - enweghị oge n'efu, n'oge nke ụfọdụ nwere ike imeziwanye (dịka ọmụmaatụ, nkwụsị nke mgbanwe gburugburu ebe obibi) na ntọhapụ ọzọ.

N'ezie, e meela mgbanwe ndị a na ọba akwụkwọ:

  • Ndozi koodu obere.
  • Na-emegharị ahụ.
  • Nhazigharị na nhazigharị nke ule ndị dị ugbu a.

Atụmatụ maka mwepụta ndị ọzọ

Python-shell ụlọ akwụkwọ

  • Na-agbakwụnye nkwado maka oku iwu anaghị egbochi (mmekọrịta nke mmezu).

ụlọ akwụkwọ smart-env

  • Mmejuputa akpaaka nke mgbanwe gburugburu ebe obibi na klaasị ENV.
  • Nkwado maka ndị na-arụ ọrụ iji lelee ịdị adị nke mgbanwe env.
  • Mmejuputa nkwado maka ọrụ str () na repr() maka klaasị ENV.

A ga-ekwupụtakwa ụbọchị nke mwepụta ndị na-esote na ọwa nkwukọrịta ndị a:

isi: www.habr.com

Tinye a comment