Hjem Personlig finansiering Syntaxfeil i Ruby - dummies

Syntaxfeil i Ruby - dummies

Anonim

Ruby prøver å være nyttig når en del av programmet ditt har en skrivefeil eller gjør noe uventet. Ruby viser en advarsel eller feilmelding, ofte med informasjon om hvor den fant problemet i koden din.

For eksempel, hvis du ved et uhell gjorde en skrivefeil når du gjorde litt enkel matte, ville Ruby fortelle deg at du har en syntaksfeil.

Syntaks er som grammatikk på engelsk. Et programmeringsspråks syntaks er strukturen, rekkefølgen og stavningen av kommandoer og uttalelser på det språket.

Hvis du gjør en forsettlig stavemåte:

2. 2. 2: 036> 3j + 3 SyntaxError: (irb): 36: syntaksfeil, uventet tIDENTIFIER, forventer slutt-av-inngang 3j + 3 ^ fra / usr / bin / irb: 11: i & 
N'

Du mente ikke å skrive bokstaven j etter nummer 3, og i motsetning til hva du kan skrive i skolen når du lærer algebra, er denne syntaksen ikke gyldig Ruby.

Ruby viser en feilmelding som er litt kryptisk, men hvis du ser syntaksfeil og et linjenummer eller et sted, gir det deg et sted å begynne å undersøke hva som gikk galt. I dette tilfellet viste Ruby den riktige linjen med en liten pilsymbol som pekte på det punktet det trodde var galt. Takk, Ruby!

Hva skjer når du prøver å få Ruby til å vise en googolplex? En googol er et morsomt begrep som betyr 10 hevet til den 100. effekten. En googolplex er 1 etterfulgt av googol (10 100 ) nuller. Den amerikanske matematikeren Edward Kasners 9-årige nevø, Milton Sirotta, antok angivelig, og definerte den som sifferet "en, etterfulgt av å skrive nuller til du blir sliten. "

I Interactive Ruby (IRB), lagre en googol i en variabel kalt googol:

2. 2. 2: 030> googol = 10 ** 100 => 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

Prøv nå å øke 10 med en googol:

2. 2. 2: 031> 10 ** googol (irb): 31: advarsel: i en ** b, kan b være for stor => Uendelig

Det er noen grenser for Rubys matematiske ferdigheter. Her viser Ruby deg en advarsel om at kommandoen du nettopp har skrevet ikke virker fordi en del av beregningen er for stor. Det viser resultatene som Infinity, som synes om riktig.

Se om Ruby kan finne et annet problem:

2. 2. 2: 037> x + 5 NameError: udefinert lokal variabel eller metode & X '; for hoved: Objekt fra (irb): 37 fra / usr / bin / irb: 11: i & 
N'

I dette tilfellet prøvde du å bruke en variabel som du ikke har lagret noe i. Ruby vet ikke hva jeg skal gjøre her, fordi det ikke kan finne en variabel som heter x (ennå).Du ser ofte denne feilen hvis du lager en skrivefeil i navnet på en variabel (eller metode). Sjekk stavemåten din og prøv igjen.

En annen vanlig Ruby-feil kan ses med denne koden:

2. 2. 2: 038> x = nil => null 2. 2. 2: 039> x + 5 NoMethodError: udefinert metode & + N' for null: NilClass fra (irb): 39 fra / usr / bin / irb: 11: i & 
N'

Du kan tenke på null som Rubys måte å representere "ingenting på." "Feilen Ruby viser betyr at den ikke vet hvordan å gjøre tillegg med null, noe som virker rimelig. I koden din vil dette trolig bety at du forventet å motta resultater fra en annen del av programmet, men koden returnerte ingenting.

Et siste problem du noen ganger ser er hvis du prøver å gjøre noe med uforenlige data:

2. 2. 2: 040> x = "a" => "a" 2. 2. 2: 041> x + 5 TypeError: ingen implisitt konvertering av Fixnum til String fra (irb): 41: i & + N' fra (irb): 41 fra / usr / bin / irb: 11: i & 
N'

Bokstaven a er tilordnet variabel x. Her, men du prøvde å legge til nummer 5 til bokstaven a. Klart dette er tull. Ruby mener det også, og forteller deg at det ikke kan konvertere dataene på en måte å få det til å fungere.

Du vil sannsynligvis gå inn i syntaksfeil oftest, fordi typoer er de enkleste feilene å gjøre. Når du ser en feilmelding, er det beste handlingsforløpet å nøye sammenligne det du skrev med prosjektets kode.

Syntaxfeil i Ruby - dummies

Redaktørens valg

Topp 5 Fantasy Baseball Sites - Dummies

Topp 5 Fantasy Baseball Sites - Dummies

Hvis du er en stor fantasy baseball fan og ser ut til å bli med i verden av online fantasy sport, så se ikke lenger. Følgende liste inneholder de fem beste fantasybaseball-nettstedene i henhold til nettstedslayout, oppdatert statistikk, utenfor råd og hjelp og teamstyringsalternativer.

Hva skal man gjøre som en baseball coach - dummies

Hva skal man gjøre som en baseball coach - dummies

Som en baseball trener, du ikke bare må lede teamet ditt, du må ta med forsyninger for å praktisere. Du vil kanskje øke følgende liste, men den inneholder grunnleggende for å få til alle baseballpraksis: Riktig lager førstehjelpsutstyr Ekstra vann Øvelsesplan for dagen, oppdelt etter tid ...

Får utrustet til å spille baseball - dummies

Får utrustet til å spille baseball - dummies

Når du tar baseballfeltet, bør du ta med det beste utstyret som er tilgjengelig. Du trenger ikke å bruke store summer til å kjøpe toppkvalitets tilbehør så lenge du vet hva du skal se etter og hvor du skal finne den. Med mindre du er under 10 år, kjøp utstyr som oppfyller alle de store ligaspesifikasjonene. ...

Redaktørens valg

Hvordan du finner ditt nivå av oppmerksomhet - dummies

Hvordan du finner ditt nivå av oppmerksomhet - dummies

Du kan sikkert ta noen form for ikke-tradisjonell trening og dump det i en tønne merket "mind-body. "Det er greit hvis du foretrekker enkelhet og ikke vil bli innpakket med kategorisering og vurdering. Men du kan også kikke på treningsprogrammer på et dypere nivå, vurdere omfanget av oppmerksomhet i en ...

Hvordan du får mest mulig ut av din meditasjon - dummies

Hvordan du får mest mulig ut av din meditasjon - dummies

For å få mest mulig ut av meditasjonspraksis må forplikte seg til det. Når du begynner å meditere regelmessig, kan du høste utallige fordeler - fra lavere stress og kolesterol til høyere nivåer av tilfredshet og lykke. Her er noen tips for å maksimere meditasjonspraksis: Meditere jevnlig - helst hver dag. Sett bort en ...

Redaktørens valg

Slik bruker du det nye perspektivet i Adobe Illustrator CS6 - dummies

Slik bruker du det nye perspektivet i Adobe Illustrator CS6 - dummies

I Adobe Illustrator CS6 Du kan opprette og redigere kunstverk basert på perspektivgitterfunksjonen (introdusert i CS5). Gitteret er en stor hjelp i å skape vellykkede perspektivillustrasjoner. For å vise eller skjule standardperspektivruten, trykk Ctrl + Shift + I (Windows) eller Kommando + Skift + I (Mac). Du kan bruke verktøyet Perspective Grid på verktøylinjen til å ...

Hvordan å pakke inn tekst ved hjelp av AdobeCS5 Illustrator - dummies

Hvordan å pakke inn tekst ved hjelp av AdobeCS5 Illustrator - dummies

Ved hjelp av en tekstbrytestil i Adobe Creative Suite 5 (Adobe CS5) Illustrator-prosjektet er en enkel måte å legge til litt kreativitet. En tekstpakke tvinger tekst til å vikle rundt en grafikk.

Hvordan du bruker Life Paint-funksjonen i Adobe Illustrator CS6 - dummies

Hvordan du bruker Life Paint-funksjonen i Adobe Illustrator CS6 - dummies

Ikke bekymre deg om å fylle lukkede figurer eller la filler flykte fra objekter med hull i uønskede områder. Ved å bruke Live Paint-funksjonen til Adobe Illustrator CS6, kan du lage det bildet du ønsker og fylle ut regioner med farge. Live Paint-bøtta registrerer automatisk regioner som er sammensatt av uavhengige kryssende baner og fyller dem tilsvarende. Malingen ...