Páginas

domingo, 3 de março de 2013

skribu-kun-python-cxap03

fonto: http://inventwithpython.com/chapter3.html

Temoj Kovritaj en tiu ĉapitro:

  • Fluon de ekzekuto
  • Kordoj
  • String-kunmeto
  • Datumtipoj (kiel kordoj aŭ entjeroj)
  • Uzanta sencelaj skribi fontkodon.
  • Savi kaj kurante programoj en sencelaj.
  • La impreso () funkcio.
  • La eniro () funkcio.
  • Komentoj
  • Capitalizing variabloj
  • Kazo-sentiveco
Tio estas sufiĉe de entjeroj kaj math por nun. Python estas pli ol nur kalkulilo. Nun ni vidu kion Python povas fari kun teksto. En ĉi tiu ĉapitro, ni lernos kiel konservi tekston en variabloj, kombini teksto kune, kaj montri ilin en la ekrano. Multaj el niaj programoj uzos teksto por montri nian ludoj al la ludanto, kaj la ludanto eniros tekston en niaj programoj per la klavaro. Ni faros nian unuan programon, kiu salutas la uzanto kun la teksto: "Saluton Mondo!" kaj petas la uzanto nomo.

Kordoj

En Python, ni laboras kun malmulta pecoj de teksto nomita kordoj. Ni povas gardi string valoroj ene variabloj samkiel ni povas stoki nombro valoroj ene variabloj. Kiam ni tajpi kordoj, ni metis ilin en inter du sola citiloj ('), tiamaniere:
>>> Spamado = 'saluton'
>>>
La sola citaĵoj estas tie nur diri al la komputilo kie la kordoj komencas kaj finiĝas (kaj ne estas parto de la kordo valoro).
Nun, se vi tajpas spamado en la ŝelon, vi devus vidi la enhavon de la spam variablo (la 'saluton' kordoj.) Ĉi tiu estas ĉar Python taksos variablo la valoron stokita en la variablo (en ĉi tiu kazo, la ĉeno ' saluton ').
>>> Spamado = 'saluton'
>>> Spamado
'Saluton'
>>>
Kordoj povas havi preskaŭ ajna klavaro karaktero en ili. (Strings ne povas havi nur citaĵoj interne de ili sen uzi eskapo gravuloj. Eskapu karakteroj estas priskribitaj poste.) Tiuj estas ĉiuj ekzemploj de kordoj:
'Saluton'
'Hi there!
'Katidoj'
'7 Pomoj, 14 oranĝoj, citronoj 3 '
'Nenion ne apartenantaj al elefantoj estas irrelephant.'
'Antaŭ longa tempo en galaksio nun, for ...'
Ho * & # WY% * & OCfsdYO * & GFC% YO * &% 3yc8r2 '
Kiel ni faris kun nombraj valoroj en la antaŭa ĉapitro, ni povas ankaŭ kombini string valoroj kune kun telefonistoj por fari esprimoj.

String kunmeto

Vi povas aldoni unu linio al la fino de alia uzante la + operatoro, kiu estas nomata string kunmeto. Provu eniri 'Saluton' + 'mondo!' En la ŝelon:
>>> 'Saluton' + 'mondo!'
'HelloWorld!
>>>
Por subteni la kordoj apartaj, metu spacon ĉe la fino de la 'Saluton' kordoj, antaŭ la simpla citaĵo, kiel jene:
>>> 'Saluton' + 'mondo!'
'Saluton Mondo!
>>>
La + operatoro funkcias malsame en ŝnuroj kaj entjeroj ĉar ili estas malsamaj datumtipoj. Ĉiuj valoroj havas datumtipo. La datumtipo de la valoro 'Saluton' estas linio. La datumtipo de la valoro 5 estas entjero. La datumtipo de la datumoj kiuj diras ni (kaj la komputilo) kia datumoj la valoro estas.

Skribi Programojn en sencelaj la Dosieraj Redaktanto

Ĝis nun ni estis tajpi instrukciojn unuope en la interaga ŝelo. Kiam ni skribas programojn kvankam, ni tajpas en pluraj instrukcioj kaj ili kuros subite. Ni skribas nia unua programo!
La nomo de la programo kiu provizas la interaga konko nomas senutilaj, la Interaktiva DeveLopement Medio. Sencelaj ankaŭ havas alian parton nomis la dosieron redaktoro.
Alklaku la menuo Dosiero sur la supro de la Python Shell fenestro, kaj elektu Nova Fenestro. Nova malplenan fenestro aperos por ni por tajpi nia programo in Ĉi fenestro estas la dosiero redaktoro.

Figuro 3-1: La dosiero redaktanto fenestro.

Saluton Mondo!


Figuro 3-2: La fundo dekstre de la dosiero
redaktoro fenestro diras al vi kie la kursoro
estas. La kursoro estas nuntempe en linio 12.
Tradicio por programistoj lerni novan lingvon por fari siajn unuajn programo ekrano la tekston "Saluton mondo!" en la ekrano. Ni kreas nian propran Saluton Mondo programo nun.
Kiam vi eniros vian programon, ne eniras la numeroj ĉe la maldekstra flanko de la kodo. Ili estas tie do ni povas raporti al ĉiu linio por numero en nia klarigo. Se vi rigardas la fundo-dekstra angulo de la dosiero redaktanto fenestro, ĝi rakontos al vi kion linio de la kursoro estas nuntempe plu.
Entajpu la sekvan tekston en la nova dosiero redaktanto fenestro. Ni nomas ĉi tiu teksto la programo fontkodon ĉar ĝi enhavas la instrukcioj kiuj Python sekvos determini ĝuste kiel la programo devus konduti. (Memoru, ne enmeti la linion nombroj!)
GRAVA NOTO! La sekva programo devus funkcii per la Python 3 interpretisto, ne la Python 2.6 (aŭ iu ajn alia 2.x versio). Estu certa, ke vi havas la ĝustan version de Python instalita. (Se vi jam havas Python 2 instalita, vi povas havi Python 3 instalita samtempe.) Por elŝuti Python 3, iru al http://python.org/download/releases/3.1.1/ kaj instali ĉi tiun version.
hello.py
Tiu kodo estas elŝutebla el http://inventwithpython.com/hello.py
Se vi ricevas erarojn post tajpi tiun kodon en, kompari ĝin al la libro kodo kun la linio malsamoj ilo en http://inventwithpython.com/diff aŭ retpoŝtu la aŭtoro en al@inventwithpython.com
  1. # Tiu programo diras saluton kaj demando al Mia nomo.
  2. print ('Saluton mondo!')
  3. print ("Kio estas via nomo? ')
  4. myName = input ()
  5. print ('Estas bone renkonti vin,' + myName)
La sencela programo donos malsamaj tipoj de instrukcioj malsamaj koloroj. Post kiam vi estas farinta tajpi tiun kodon en la fenestro devus aspekti kiel ĉi:

Figuro 3-3: La dosiero redaktanto fenestro aspektos kiel ĉi post vi tajpas en la kodo.

Savi Via Programo


Figuro 3-4: Ŝpari la programo.
Kiam vi eniris vian fontokodon, konservu ĝin por ke vi ne devos retype cxiufoje kiam ni komencos senokupe. Por fari tion, elektu la Arkivo menuo supre de la Arkivo Redaktanto fenestro, kaj poste alklaku Konservu kiel. La Save Kiel fenestro devus malfermi. Entajpu hello.py en la Arkivo Nomo skatolo tiam premu Save. (Vidu Figuro 3-4.)
Vi devus konservi viajn programojn ĉiu tempaltempe kiel vi tajpas ilin. Tiun vojon, se la komputilo frakasas aŭ vi hazarde eliri el senutilaj, nur la tajpado, kiun vi faris post via lasta save perdiĝos. Premu Ctrl-S por savi vian dosieron rapide, sen uzi la muson ajn.
Video tutorial de kiel uzi la dosieron redaktanto estas havebla de ĉi tiu libro de afiŝinto ĉe http://inventwithpython.com/videos/ .
Se vi ricevas eraron kiu aspektas jene:
Saluton mondo!
Kio estas via nomo?
Albert

Traceback (plej lasta alvoko lasta):
Dosieron "C :/ Python26/test1.py", linio 4, en <module>
myName = input ()
Dosieron "<string>", linio 1, en <module>
NameError: nomo 'Albert "ne estas difinita
... Tiam ĉi signifas, ke vi estas kurante la programon kun Python 2, anstataŭ Python 3. Vi povas aŭ instali Python 3, aŭ konverti la fontan kodon en ĉi tiu libro al Python 2. Apendico A listas la diferencoj inter Python 2 kaj 3, kiun vi bezonos por ĉi tiu libro.

Malfermo La Programoj Vi Saved

Ŝarĝi savis programo, elekti Dosieraj> Malfermu. Fari tion nun kaj en la fenestro kiu aperas elektu hello.py kaj premu la Open butonon. Via savis hello.py programo devus malfermi en la Arkivo Redaktanto fenestro.
Nun estas tempo por kuri nia programo. De la menuo Dosiero, elektu Run> Kuru Modulo aŭ nur premi la F5 ŝlosilo sur via klavaro. Via programo devus kuri en la ŝelon fenestro kiu aperis kiam vi unue komencis sencelan. Memoru, vi devas premi F5 de la dosiero eldonisto fenestro, ne la interaga ŝelon de fenestro.
Kiam via programo petas vian nomon, iru antaŭen kaj eniri ĝin kiel montrita en la figuro 3-5:

Figuro 3-5: Kion la interaga konko similas al la kuri la "Saluton Mondo" programo.
Nun, kiam vi pelos Enter, la programo devus saluti vin (la uzanto) por nomo. Gratulojn! Vi skribis vian unuan programon. Vi nun estas komenco komputil-programisto. (Vi povas kuri ĉi programo denove se vi ŝatas premante F5 denove.)

Kiel la "Saluton Mondo" Programo Verkoj

Kiel funkcias tiu programo laboro? Nu, ĉiu linio kiu ni eniris estas instrukcio al la komputilo kiu estas interpretita per Python en maniero, ke la komputilo komprenos. Al komputila programo estas multe kiel recepton. Ĉu la unua paŝo unua, tiam la dua, kaj tiel plu ĝis oni atingas la finon. Ĉiu instrukcio estas sekvis en vico, komencante de la plejsupro de la programo kaj laborante sur la listo de instrukcioj. Post la programo ekzekutas la unua linio de instrukcioj, ĝi movas en kaj ekzekutas la dua linio, tiam la tria, kaj tiel plu.
Ni nomas la programo jenaj de instrukcioj iom post paŝo la fluon de ekzekuto, aŭ nur la ekzekuto por mallonga.
Nun ni rigardu nian programon unu linio je la tempo, por vidi, kio ĝi estas faranta, komencante kun linio numero 1.

Komentoj

  1. # Tiu programo diras saluton kaj demando al Mia nomo.
Tiu linio estas nomata kiel komento. Neniu teksto post # signo (nomita la funto signo) estas komento. Komentoj estas ne por la komputilo, sed por vi, la programisto. La komputilo ignoras ilin. Ili uzis memorigi vin pri tio, kion la programo faras aŭ diras aliaj kiuj povus rigardi vian kodon kio estas ke via kodo provas fari.
Programistoj kutime metis komenton sur la supro de sia kodo doni siajn programon titolo. La sencela programo montras komentoj en ruĝa helpi ilin elstaras.

Funkcioj

Funkcio estas speco de kiel mini-programo en via programo. Ĝi enhavas liniojn de kodo kiu estas ekzekutitaj de supre ĝis malsupre. Pitono havigas iujn enkonstruita en funkcioj, ke ni povas uzi. La granda afero pri funkcioj estas ke ni nur bezonas scii kion la funkcio faras, sed ne kiel ĝi faras ĝin. (Vi devas scii ke la impreso () funkcio vidigas tekston sur la ekrano, sed vi ne bezonas scii kiel tion faras.)
Funkcio alvoko estas peco de kodo kiu rakontas nia programo por kuri la kodon ene de funkcio. Ekzemple, via programo povas nomi la impreso () funkcio kiam ajn vi volas montri ĉeno sur la ekrano. La impreso () funkcion prenas la kordoj vi tajpas en inter la parentezoj kiel eniro kaj montras la tekston sur la ekrano. Ĉar ni volas montri Saluton mondo! Sur la ekrano, oni tajpas la impreso funkcio nomo, sekvita de malfermo parentezo, sekvita de la 'Saluton mondo!' Kordoj kaj fermo parentezo.

La impreso () Funkcio

  1. print ('Saluton mondo!')
  2. print ("Kio estas via nomo? ')
Tiu linio estas alvoko al la impreso funkcio, kutime skribata kiel print () (kun la linio al esti presitaj tuj interne de la krampoj).
Ni aldonu krampoj al la fino de funkcio nomoj klarigi ke ni raportis al funkcio nomata print (), ne variablo nomata impreso. La krampoj en la fino de la funkcio ni scias ke ni parolas pri funkcio, multe kiel la citilojn ĉirkaŭ la nombro '42 'al ni, ke ni parolas pri la kordo '42' kaj ne la entjero 42.
Linio 3 estas alia impreso () funkcio nomita. Ĉi-foje, la programo montras "Kio estas via nomo?"

La eniro () Funkcio

  1. myName = input ()
Ĉi tiu linio havas asigno komunikaĵo kun ŝanĝiĝema (myName) kaj funkcio alvoko (enigo ()). Kiam enigo () estas nomita, la programo atendas enigo, cxar la uzanto eniri tekston. La teksto kordoj, ke la uzanto enigas (via nomo) igas la funkcia potenco valoro.
Kiel esprimoj, funkcio alvokoj taksi al sola valoro. La valoro kiu la funkcio alvoko taksas al nomas la reveno valoro. (Fakte, oni povas ankaŭ uzi la vorton "revenas" por signifi la sama aĵo kiel "taksas".) En ĉi tiu kazo, la reveno valoro de la enigo () funkcio estas la ĉeno kiu la uzanto tajpas en-ilia nomo. Se la uzanto tajpas en Alberto, la enigo () funkcion alvoko taksas la ĉeno 'Albert ".
La funkcio nomata enigo () ne bezonas neniun enigo (kontraste kun la presita () funkcio), tial ne estas nenio en inter la krampoj.
  1. print ('Estas bone renkonti vin,' + myName)
Sur la lasta linio ni havas print () funkcio denove. Ĉi-foje, ni uzas la pli operatoro (+) al concatenate la ĉeno 'Estas bone renkonti vin,' kaj la ŝnuro stokas en la myName variablo, kiu estas la nomo kiun nia eniro de la uzanto en la programo. Jen kiel ni preni la programon por saluti nin per nomo.

Ending la Programo

Iam la programo ekzekutas laIru al Ĉapitro 2 - La Interaktiva Shell lasta linio, ĝi haltas. Je ĉi tiu punkto estas finitaeliris kaj ĉiuj variabloj estas forgesita de la komputilo, la cxenon ni gardas en myName. Se vi provos kurante la programo denove kun malsama nomo, kiel Carolyn, ĝi pensos ke estas via nomo.
Saluton mondo!
Kio estas via nomo?
Carolyn
Ĝi estas bona renkonti vin, Carolyn
Memoru, la komputilo nur faras precize kion vi plani ĝin fari. En ĉi tio, nia unua programo, ĝi estas planita por demandi vin pro via nomo, lasu vi tajpas en cxeno, kaj tiam diras saluton kaj montri la kordo vi tajpis.
Sed komputiloj estas muta. La programo ne zorgas se vi tajpas en via nomo, iu alia nomo, aŭ nur io muta. Vi povas entajpi ajn vi volas kaj la komputilo traktos ĝin la sama maniero:
Saluton mondo!
Kio estas via nomo?
kako
Ĝi estas bona renkonti vin, kako

Variablo Nomoj

La komputilo ne zorgas kion vi enoficigi vian variabloj, sed vi devus. Donante variabloj nomoj kiuj reflektas kion tipo de datumoj ili enhavas faciligante komprenas kion programo faras. Anstataŭ nomo, ni povus nomi tiun variablon abrahamLincolnnomo. La komputilo kuros la programo la sama (tiel longe kiel vi konsekvence uzas abrahamLincolnnomo).
Variablo nomoj (tiel kiel ĉio alia en Python) estas sentema al kazo. Case-sentema signifas la saman variablo nomo en malsama kazo konsideras tute aparta variablo nomo. Do spamado, SPAM, spamo, kaj spamo estas konsiderataj kvar malsamaj variabloj en Python. Ili ĉiu povas enhavi siajn proprajn apartajn valorojn.
Ĝi estas malbona ideo havi alie-cased variabloj en via programo. Se vi stokas vian unuan nomon en la variablo nomon kaj familian nomon en la variablo NOMO, estus tre konfuza kiam vi legis vian kodo semajnoj post vi unue skribis ĝin. Ĉu nomo signifas unua kaj NOMO signifas lasta, aŭ la alia vojo ĉirkaŭ?
Se vi hazarde ŝanĝi la nomon kaj NOMO variabloj, tiam via programo ankoraŭ kuri (tio estas, ĝi ne havos neniun sintaksaj eraroj) sed kuros malĝuste. Ĉi tiu tipo de difekto en via kodo estas nomata kiel cimon. Ĝi estas tre komune hazarde fari erarojn en viaj programoj dum vi skribas ilin. Jen kial estas necese ke la variablo nomoj vi elektu sencon.
Ĝi ankaŭ helpas al capitalize variablo nomojn se ili inkluzivas pli ol unu vorto. Se vi stoki ĉenon de tio, kion vi havis por matenmanĝo en variablo, la variablo nomo whatIHadForBreakfastThisMorning estas multe pli facile legi ol whatihadforbreakfastthismorning. Tio estas konvencio (tio estas, laŭvola sed normo farmanieron) en Python programado. (Kvankam ecx pli bone estus iu simpla, kiel todaysBreakfast. Capitalizing la unua litero de ĉiu vorto en variablo nomoj faras la programon pli legebla.

Resumo

Nun ke ni lernis kiel trakti kun teksto, ni povas komenci farante programojn kiuj la uzanto povas kuri kaj interagi kun. Tio estas grava ĉar teksto estas la ĉefa maniero la uzanto kaj la komputilo komuniki kun ĉiu alia. La ludanto eniros tekston al la programo per la klavaro kun la enigo () funkcio. Kaj la komputilo montras teksto sur la ekrano kiam la impreso () funkcio estas ekzekutitaj.
Kordoj estas nur malsama datumtipo ke ni povas uzi en niaj programoj. Ni povas uzi la + operatoro al concatenate kordoj kune. Uzanta la + operatoro al concatenate du kordoj kune por formi novan ĉenon estas ĝuste kiel uzi la + operatoro aldoni du entjeroj por formi novan entjero (la sumo).
En la sekvanta ĉapitro, ni lernos pli pri variabloj por ke nia programo rememoros la teksto kaj ciferoj kiuj la ludanto eniras en la programo. Iam ni lernis kiel uzi tekston, nombroj, kaj variabloj, ni estos pretaj por komenci krei ludoj.

Nenhum comentário:

Postar um comentário