SyntaxError EOL Mens Du Skanner Streng Bokstavelig

SyntaxError EOL Mens Du Skanner Streng Bokstavelig?

Syntaksfeil oppdages før programmene kjører. Vanligvis er det bare en skrivefeil eller en syntaktisk feil. En slik feil i Python er SyntaxError EOL mens du skanner String literal.

Dette SyntaxError oppstår mens tolken skanner strenglitteralene og treffer EOL (‘End Of Line’). Men hvis DET ikke finner et bestemt tegn før EOL, blir feilen hevet.

La oss forstå det mer ved hjelp av et eksempel.

Hva er «SyntaxError EOL mens du skanner streng bokstavelig»?

Det oppstår En SyntaxError EOL(End Of Line) – feil når Python-tolken ikke finner et bestemt tegn eller et sett med tegn før kodelinjen avsluttes. Når feilen er hevet, er kjøring av kode stoppet.

  • Manglende Anførselstegn for å lukke strengen
  • Strengen Strekker Seg Forbi En Linje

Manglende Anførselstegn For Å Lukke Strengen:

når du lukker en streng, er det ofte tider når vi glemmer å legge til et invertert komma (enkelt eller dobbelt). Når dette skjer, Kan Python-tolken ikke finne Slutten av linjen mens du skanner strengen. Dermed Oppstår SyntaxError EOL-feilen.

Eksempel 1:

MyList = if not MyList: print("MyList is emptyelse: print("MyList is not empty")

Utgang:

File "main.py", line 3 print("MyList is empty ^SyntaxError: EOL while scanning string literal

Forklaring

i koden ovenfor har vi initialisert en tom liste MyList og brukt en if-else-blokk for å skrive ut om ‘MyList’ er tom eller ikke. Inne i if-blokken brukes print-setningen til å skrive ut en streng. Men strengen mangler dobbelt inverterte kommaer på slutten. Og på grunn av de manglende kommaene, Kan Python-tolken ikke finne enden av strengen.

Dermed Oppstår SyntaxError-feilen.

SyntaxError EOL Mens Du Skanner String Literal

Løsning

Kontroller at strengen alltid skal lukkes i enkle eller doble anførselstegn.

Korrekt Kode

llist = if not llist: print("List is empty")else: print("List is not empty")

Output

MyList is empty

String Strekker Seg Forbi En Linje

I Python kan Vi ikke utvide vår streng som er omsluttet av et enkelt eller dobbelt invertert komma forbi en enkelt linje. Hvis vi prøver å gjøre det feilen «SyntaxError EOL mens skanning strengen bokstavelig oppstår» vil dukke opp. Hvis vi vil at strengen skal strekke seg i flere linjer, bør de være vedlagt i trippel inverterte kommaer (enkelt eller dobbelt).

Eksempel 2:

ttuple = ()if not ttuple: print("Tuple isempty")else: print("Tuple is not empty")

Utgang :

 file "main.py", line 3 print("MyTuple is ^SyntaxError: EOL while scanning string literal

Forklaring

i koden ovenfor har vi initialisert en tom tuppel ‘MyTuple’ og brukt if-else block til å skrive ut om ‘MyTuple’ er tom eller ikke. Inne i if-blokken brukes print-setningen til å skrive ut en streng. Men strengen er utvidet i flere linjer. Og blir ikke tolket av python tolk. Dermed er feilen hevet.

Løsning

Prøv å holde hele strengen innenfor en enkelt linje.

Korrekt Kode:

MyTuple = ()if not MyTuple: print("MyTuple is empty")else: print("MyTuple is not empty")

Utgang:

MyTuple is empty

Obs! : hvis du vil at strengen skal initialiseres i flere linjer. Deretter bruker trippel invertert komma enten enkelt («‘Enkelt anførselstegn»‘) eller dobbel («»»Doble anførselstegn»»»») for å legge strengen.

Eksempel:

MyTuple = ()if not MyTuple: print("""MyTuple is empty""")else: print("MyTuple is not empty")

Utgang:

MyTuple isempty

Konklusjon

vi håper alle scenariene forklart ovenfor vil hjelpe deg å forhindre SyntaxError EOL mens du skanner Streng bokstavelig feil. En annen feil du må unngå er å bruke feilaktige sitater. Mens du lukker strenger, sørg for at hvis det begynner med enkle anførselstegn, må det ende med doble anførselstegn.

You might also like

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.