Permalänk
Medlem

Nybörjare Python

Hej,

Jag är nybörjare på Python och kanske någon kan hjälpa mig med en fråga.
Det står:

Vad är det för fel på följande kod?

6606 = svenska_flaggans_dag
1. 6606 är ett ogiltigt variabelnamn.
2. Det blir fel för att 6606 inte är svenska flaggans dag.
3. Man kan inte tilldela värdet 6606 ett nytt värde.ggfgch 3 är båda korrekta svar.

.
Svaret är 1 och 3. Min fråga: 1 kan jag förstå. Ang.3 då menar de alltså att textsträngen är variabeln (svenska_flaggans_dag) och värdet är 6606?

Fråga 2. Kan man studera Python någonstans på webben på svenska?

Visa signatur

jepp

Permalänk
Medlem

Var ett tag sedan jag var i Python, så kan ha fel.
Första fråga:
Man kan inte ha ett nummer som variabel namn? Då detta numret redan håller ett värde, dvs numret. Också tror jag att den variabeln är på "fel" håll? dvs att du vill ha värdet 6606 i variabeln svenska_flaggans_dag? Då får man vända på det:
svenska_flaggans_dag = 6606

Först variabel namn, sedan värdet.

Fråga 2:
Kommer säga som många andra gör, läs böcker osv på engelska. Kommer bli mycket smidigare, det kommer också finnas MYCKET mer böcker och hjälp. Skulle också säga att det är bäst att läsa böcker och inte guider, för författarna till böckerna försöker skriva de så bra som möjligt, så de kärnar mer pengar.Men det finns såklart undantag.

Hoppas jag var till någon hjälp.

Permalänk
Medlem
Skrivet av genii:

Var ett tag sedan jag var i Python, så kan ha fel.
Första fråga:
Man kan inte ha ett nummer som variabel namn? Då detta numret redan håller ett värde, dvs numret. Också tror jag att den variabeln är på "fel" håll? dvs att du vill ha värdet 6606 i variabeln svenska_flaggans_dag? Då får man vända på det:
svenska_flaggans_dag = 6606

Först variabel namn, sedan värdet.

Fråga 2:
Kommer säga som många andra gör, läs böcker osv på engelska. Kommer bli mycket smidigare, det kommer också finnas MYCKET mer böcker och hjälp. Skulle också säga att det är bäst att läsa böcker och inte guider, för författarna till böckerna försöker skriva de så bra som möjligt, så de kärnar mer pengar.Men det finns såklart undantag.

Hoppas jag var till någon hjälp.

Ja så ska det ju vara. Tack.

Visa signatur

jepp

Permalänk
Medlem

Kan väl fråga en till sak när jag ändå är här.

fastnade på denna:

Det står:

Vill man att en senare utskrift (t ex en som görs av en print-sats några rader senare) ska göras på samma rad som den man just skriver ut låter man ett komma stå sist på raden:
print "Charles is",
age = 2006-1987
print age, "years old"
Min kommentar: utskriften ska alltså bli: "Charles is 19 years old."
Jag får inte till det. För mig blir det bara: "19 years old" men inget "Charles is" ?? Vilket fel gör jag?

Jag skrev precis som ovanstående satser.

Visa signatur

jepp

Permalänk

Gör du en scriptfil (ctrl+n i idle) i python idle och kör skriptfilen (skriv dina rader i den filen och tryck f5) och tryck kommer det där fungera utmärkt. Däremot fungerar de inte att skriva direkt i idle fönstet (eller cmd,terminal eller vad du nu kör i)

Permalänk
Medlem
Skrivet av fizzyflaskan:

Gör du en scriptfil (ctrl+n i idle) i python idle och kör skriptfilen (skriv dina rader i den filen och tryck f5) och tryck kommer det där fungera utmärkt. Däremot fungerar de inte att skriva direkt i idle fönstet (eller cmd,terminal eller vad du nu kör i)

Så enkelt var det Tack.

Visa signatur

jepp

Permalänk
Medlem

Körde fast igen

Hello,

Jag håller på med Python och körde fast.
Det står:

"Instruktionen input() läser in en rad från användaren. Du kan spara det inmatade värdet
i en variabel.
Skriv ett program som frågar efter användarens namn och skriver sedan ut det tillsammans
med en valfri hälsningsfras."

Min kommentar: Ja här hänger jag inte med. Jag har iep som utvecklingsmiljö. För det första, om jag skriver in en instruktion i input, hur ska jag spara den som en variabel sedan?

2. Jag har ingen aning om hur jag ska skriva det programmet som efterfrågas?
Det är helt nya saker för mig så jag hänger inte med alls.

Visa signatur

jepp

Permalänk
Medlem
Skrivet av Jepp:

Hello,

Jag håller på med Python och körde fast.
Det står:

"Instruktionen input() läser in en rad från användaren. Du kan spara det inmatade värdet
i en variabel.
Skriv ett program som frågar efter användarens namn och skriver sedan ut det tillsammans
med en valfri hälsningsfras."

Min kommentar: Ja här hänger jag inte med. Jag har iep som utvecklingsmiljö. För det första, om jag skriver in en instruktion i input, hur ska jag spara den som en variabel sedan?

2. Jag har ingen aning om hur jag ska skriva det programmet som efterfrågas?
Det är helt nya saker för mig så jag hänger inte med alls.

input() finns redan i Python. Det den returnerar kan du tilldela en variabel precis som vanlig tilldelning.

Visa signatur

I'm Winston Wolfe. I solve problems.

Permalänk
Medlem
Skrivet av Jepp:

Hello,

Jag håller på med Python och körde fast.
Det står:

"Instruktionen input() läser in en rad från användaren. Du kan spara det inmatade värdet
i en variabel.
Skriv ett program som frågar efter användarens namn och skriver sedan ut det tillsammans
med en valfri hälsningsfras."

Min kommentar: Ja här hänger jag inte med. Jag har iep som utvecklingsmiljö. För det första, om jag skriver in en instruktion i input, hur ska jag spara den som en variabel sedan?

2. Jag har ingen aning om hur jag ska skriva det programmet som efterfrågas?
Det är helt nya saker för mig så jag hänger inte med alls.

namn = raw_input("Skriv in ditt namn: ") print "Hejsan", namn, ", hur står det till idag?"

Denna koden skriver ut namnet i en hälsningsfras

Edit: Hoppas det var detta som du undrade, gissade var du syftade på Annars så får du förklara mer vad du inte förstod

Permalänk
Medlem

p

Skrivet av Kabeltv:

namn = raw_input("Skriv in ditt namn: ") print "Hejsan", namn, ", hur står det till idag?"

Denna koden skriver ut namnet i en hälsningsfras

Edit: Hoppas det var detta som du undrade, gissade var du syftade på Annars så får du förklara mer vad du inte förstod

Tack för svaret. Jag har tyvärr inte fattat riktigt ännu.

Ska man skriva detta i interaktivt läge eller i skript?

1. "Skriv ett program som frågar efter användarens namn"

Då skriver jag alltså:

print ("Vad heter du?") och trycker sedan på retur.

Variabeln får heta "namn" och jag skriver:

namn=input("Erik") (Ska man ha citationstecken i input?)

Sedan:

"och skriver sedan ut det tillsammans
med en valfri hälsningsfras."

print=(namn) + ("Vänliga hälsningar")

Det fungerade dock inte

Visa signatur

jepp

Permalänk

Hej Jepp.

Du använder dig alltid utav skript läget när du skriver program. Interaktivt läge används mest för att testa en ny grej du lärt dig eller om du vill testa en speciell funktion av ditt program.

För att ge användaren ska kunna mata in något använder sig man av input() eller raw_input() . input() fungerar bara med siffror medans raw_input() fungerar med strängar.

Inuti paranteserna efter input kan du skriva in en text precis som med print. Vill du fråga efter t.ex. ett namn kan man då skriva det som

namn=raw_input("Vad heter du?: ")
Programmet kommer då printa "Vad heter du?: " och lagrar sedan det användaren skriver in i variabeln namn

Permalänk
Medlem

så här skulle jag gjort:
name = raw_input ("What is your name?")
print "Hello " +name +"!"

Om man ska ha bokstäver osv måste man använda raw_input, input klara bara siffror. Det man skriver i parenteserna kommer att skrivas i konsolen, så man ska inte ha print "what is your name" på en egen rad, utan man har det i samma som jag visade ovanför. Sedan printar vi "hello" och variablen name, där man har namnet.

Edit: Zednosius var före..

Permalänk
Hedersmedlem
Skrivet av Jepp:

Hej,

Jag är nybörjare på Python och kanske någon kan hjälpa mig med en fråga.
Det står:

Vad är det för fel på följande kod?

6606 = svenska_flaggans_dag
1. 6606 är ett ogiltigt variabelnamn.
2. Det blir fel för att 6606 inte är svenska flaggans dag.
3. Man kan inte tilldela värdet 6606 ett nytt värde.ggfgch 3 är båda korrekta svar.

.
Svaret är 1 och 3. Min fråga: 1 kan jag förstå. Ang.3 då menar de alltså att textsträngen är variabeln (svenska_flaggans_dag) och värdet är 6606?

Fråga 2. Kan man studera Python någonstans på webben på svenska?

Jag kan ge mig på ett försök förklara dessa påståenden. Men det blir invecklat...
1. Är rätt eftersom variabelnnamn (mer korrekt i sammanhanget benämnt: identifierare) får inte inledas med siffra. Det beskriver
http://docs.python.org/reference/lexical_analysis.html#identi...
Där i 2.3 framgår det av syntaxbeskrivningen i BNF-form att identifierare måste inledas med bokstav eller understreck. Kollar man sen på assignment så står det att vänstersidan ska vara en identifierare. Eller några andra typer men som i slutändan blir identifierare det med (typ).
http://docs.python.org/reference/simple_stmts.html#assignment...

2. Nonsenspåstående och uppenbart felaktigt.

3. Det är nu det blir lite klurigt. Skriver du 6606 i python så är det inte bara det naturliga talet 6606 utan ett objekt av typen int. Du kan se identiteten genom att använda funktionen id(). I CPython så ger det minnesadressen till objektet. type() visar vilken typ det är (int). Jag visar lite från python CLI nedan:

>>> id(6606) 31537680L >>> type(6606) <type 'int'> >>> a=6606 >>> id(a) 31537680L >>> type(a) <type 'int'> >>> len(6606) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: object of type 'int' has no len()

Kör man id(6606) efter man tilldelat 'a' det talet så blir det annorlunda, men det hör inte till saken och inget att gå in på nu.
Det sista visar på att 6606 är ett objekt. I ett språk där man inte har det här upplägget borde det ge ett syntaxfel att skriva ett simpelt nummer till en funktion som tar in objekt. Här får man istället ett type error, att den inbyggda typen 'int' inte stödjer len.

Så vad kokar allt det här ner till? Jo det vore ju förfärligt om man kunde få ändra värdet på 6606. Då skulle saker som denna kunna genomföras:

>>> 6606 = 1 >>> 6606 + 4 5

Där svaret såklart ska vara 6610 och inte 5. Man får helt enkelt inte omdefiniera de här inbyggda heltalen.

Går att läsa om inbyggda typer här:
http://docs.python.org/reference/datamodel.html#objects-value...

Visa signatur

Forumregler | Feedbackforumet | Något som behöver modereras? Tryck på Anmäl inlägget och ge en anledning, någon moderator kommer granska inlägget och göra (egen) bedömning
"Fate. Protects fools, little children and ships named Enterprise." - Riker - ST:TNG

Permalänk
Medlem
Skrivet av Zednosius:

Hej Jepp.

Du använder dig alltid utav skript läget när du skriver program. Interaktivt läge används mest för att testa en ny grej du lärt dig eller om du vill testa en speciell funktion av ditt program.

För att ge användaren ska kunna mata in något använder sig man av input() eller raw_input() . input() fungerar bara med siffror medans raw_input() fungerar med strängar.

Inuti paranteserna efter input kan du skriva in en text precis som med print. Vill du fråga efter t.ex. ett namn kan man då skriva det som

namn=raw_input("Vad heter du?: ")
Programmet kommer då printa "Vad heter du?: " och lagrar sedan det användaren skriver in i variabeln namn

Hej,

Tack för svaren.

"För att ge användaren ska kunna mata in något använder sig man av input() eller raw_input() . input() fungerar bara med siffror medans raw_input() fungerar med strängar."

(Jag kör python 3.x. Räcker det inte med input() för både strängar och siffror? Boken jag läser har inte nämnt något om raw_input()?)

Inuti paranteserna efter input kan du skriva in en text precis som med print. Vill du fråga efter t.ex. ett namn kan man då skriva det som

namn=raw_input("Vad heter du?: ")
Programmet kommer då printa "Vad heter du?: " och lagrar sedan det användaren skriver in i variabeln namn

(Jag provade, det räcker om jag skriver input(). Det behövs ej raw_input. Det fungerade dock inte med ":" i slutet på koden.)

(Sedan skriver du att jag ska lagra det. Är det "namn" som är variabelnamnet?)

Visa signatur

jepp

Permalänk

Sorry jag kapar tråden lite, men vilka minnen Python väcker. Det var det språket vi läste i Introduktion till Programmering, den första kursen jag läste på universitetet, efter att ha kuggat på första tentan pluggade jag som en tok och plötsligt trillade polletten ner och på omtentan hade jag jag bara två fel. Men nu har jag fan glömt allt, men minns att jag tyckte det var ett intressant språk.

Permalänk
Entusiast
Skrivet av Jepp:

Hej,

Tack för svaren.

"För att ge användaren ska kunna mata in något använder sig man av input() eller raw_input() . input() fungerar bara med siffror medans raw_input() fungerar med strängar."

(Jag kör python 3.x. Räcker det inte med input() för både strängar och siffror? Boken jag läser har inte nämnt något om raw_input()?)

Inuti paranteserna efter input kan du skriva in en text precis som med print. Vill du fråga efter t.ex. ett namn kan man då skriva det som

namn=raw_input("Vad heter du?: ")
Programmet kommer då printa "Vad heter du?: " och lagrar sedan det användaren skriver in i variabeln namn

(Jag provade, det räcker om jag skriver input(). Det behövs ej raw_input. Det fungerade dock inte med ":" i slutet på koden.)

(Sedan skriver du att jag ska lagra det. Är det "namn" som är variabelnamnet?)

Det är lite flummig hör men om jag har förstått rätt så är det detta resultatet du vill ha:
Programmet ska fråga efter ett namn från användaren, när användaren har angett det så ska programmet hälsa på användaren.

Detta åstadkommer du såhär:

name = input("Vad heter du?: ") print("Hej " + name + "!")

Det som händer är att variabeln name skapas och kallar på funktionen input(), i kallelsen skickar den även med strängen "Vad heter du?: ". Funktionen input() i sin tur skriver ut strängen och väntar tills användaren har matat in ett värde, efter det retunerar den användarens input som sparas i variablen name vi nyss skapade. Detta är ganska overkill men det kan vara bra att veta. input() är en funktion som finns i pythonbiblioteket och gör att du slipper koda allt om användarinput själv.
Efter det kallas funktionen print() och du skickar med informationen om vad som ska printas, två textsträngar och en variabel.

Hoppas detta klarar upp lite

Permalänk
Hedersmedlem

gällande input() och raw_input(). Det verkar som det ändras från python 2.x till 3.x
Konsulterar vi dokumentationen så föreslås raw_input() i 2.x för generell textinmatning men nämns inte i 3.x
http://docs.python.org/library/functions.html#input
http://docs.python.org/py3k/library/functions.html#input

Visa signatur

Forumregler | Feedbackforumet | Något som behöver modereras? Tryck på Anmäl inlägget och ge en anledning, någon moderator kommer granska inlägget och göra (egen) bedömning
"Fate. Protects fools, little children and ships named Enterprise." - Riker - ST:TNG

Permalänk
Medlem
Skrivet av Blargmode:

Det är lite flummig hör men om jag har förstått rätt så är det detta resultatet du vill ha:
Programmet ska fråga efter ett namn från användaren, när användaren har angett det så ska programmet hälsa på användaren.

Detta åstadkommer du såhär:

name = input("Vad heter du?: ") print("Hej " + name + "!")

Det som händer är att variabeln name skapas och kallar på funktionen input(), i kallelsen skickar den även med strängen "Vad heter du?: ". Funktionen input() i sin tur skriver ut strängen och väntar tills användaren har matat in ett värde, efter det retunerar den användarens input som sparas i variablen name vi nyss skapade. Detta är ganska overkill men det kan vara bra att veta. input() är en funktion som finns i pythonbiblioteket och gör att du slipper koda allt om användarinput själv.
Efter det kallas funktionen print() och du skickar med informationen om vad som ska printas, två textsträngar och en variabel.

Hoppas detta klarar upp lite

Tack för ditt svar.

Ja det är mycket jag ej fattat.

"Funktionen input() i sin tur skriver ut strängen och väntar tills användaren har matat in ett värde, "

Då ska man alltså mata in ett namn efter semikolona i : name = input("Vad heter du?: ")

"Funktionen input() i sin tur skriver ut strängen och väntar tills användaren har matat in ett värde, "

Kan du visa det?

Visa signatur

jepp

Permalänk
Entusiast
Skrivet av Jepp:

Tack för ditt svar.

Ja det är mycket jag ej fattat.

"Funktionen input() i sin tur skriver ut strängen och väntar tills användaren har matat in ett värde, "

Då ska man alltså mata in ett namn efter semikolona i : name = input("Vad heter du?: ")

"Funktionen input() i sin tur skriver ut strängen och väntar tills användaren har matat in ett värde, "

Kan du visa det?

Du är helt rätt på det. Att skriva

name = input(Vad heter du?: ")

är egentligen samma sak som att skriva

print("Vad heter du?: ") name = input()

Förutom att det första alternativet är enklare och snyggare, plus att du får det på samma rad.
input() väntar alltid på respons från användaren.

Koden från kommentaren du svarade på visar väll det ganska bra om du kör den, det ser väldigt lite ut men det är ett fullt fungerande program. Ska försöka sammanfatta det simplare: På första raden så; 1. Skapar variabeln name. 2. Skriver ut texten i input() funktionen. 2.1 Väntar på data från användaren. 2.2 Sparar det användaren skrev i variabeln name.
Sen på andra raden bara skriver den ut name tillsammas med Hej och !

Hoppas jag lyckades vara tydligare denna gången

Permalänk
Medlem
Skrivet av Blargmode:

Du är helt rätt på det. Att skriva

name = input(Vad heter du?: ")

är egentligen samma sak som att skriva

print("Vad heter du?: ") name = input()

Förutom att det första alternativet är enklare och snyggare, plus att du får det på samma rad.
input() väntar alltid på respons från användaren.

Koden från kommentaren du svarade på visar väll det ganska bra om du kör den, det ser väldigt lite ut men det är ett fullt fungerande program. Ska försöka sammanfatta det simplare: På första raden så; 1. Skapar variabeln name. 2. Skriver ut texten i input() funktionen. 2.1 Väntar på data från användaren. 2.2 Sparar det användaren skrev i variabeln name.
Sen på andra raden bara skriver den ut name tillsammas med Hej och !

Hoppas jag lyckades vara tydligare denna gången

Hej,

Ok jag börjar hajja. Polletten börjar trilla ner så att säga

Ändå får jag det bara att fungera delvis. När jag skriver i prompt så får jag problem.

På första raden skriver jag:

namn=input("Hej, vad heter du?: ") . Sedan sparar jag denna.
Sedan skriver jag in Olle efter kolontecknet. Sedan sparar jag. Jag skriver inte Olle med citattecken, dvs "Olle".

På rad 2 skriver jag:
print("Hej",namn, "Skoj råkas!"). Sedan sparar jag detta.

Sedan trycker jag F5.

Resultatet blir:

Hej, vad heter du?Olle

Jag trycker F5 en gång till och det blir:

0 Skoj råkas!

Visa signatur

jepp

Permalänk

Kolla upp thenewboston på youtube, han har en bra guide i hur man programmerar i Python.

Visa signatur

|>Cooler Master Dominator 690|Asus M4A79XTD Evo|AMD Phenom 2 X4 955 BE@3,7 Ghz|Scythe Kama Angle Rev.B|Corsair Vengeance 8GB DDR3 1600Mhz|Cougar CM 700|XFX Radeon HD 5850 AvP|Western Digital Caviar 500GB|DVDRW Samsung SH-233L<|

Permalänk
Medlem
Skrivet av Blargmode:

Du är helt rätt på det. Att skriva

name = input(Vad heter du?: ")

är egentligen samma sak som att skriva

print("Vad heter du?: ") name = input()

Förutom att det första alternativet är enklare och snyggare, plus att du får det på samma rad.

Jag tycker det är fulare. Input med argument antyder att man matar in värdet mellan citationstecken när de i själva verket skrivs till stdout. Enligt samma devis borde då print() vänta på input från stdin.

Skickades från m.sweclockers.com

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Entusiast
Skrivet av Teknocide:

Jag tycker det är fulare. Input med argument antyder att man matar in värdet mellan citationstecken när de i själva verket skrivs till stdout. Enligt samma devis borde då print() vänta på input från stdin.

Skickades från m.sweclockers.com

Vad dillrar du om? input() är en metod (funktion) som är inbyggd i standardbiblioteket för Python, lika så är print(). Det gör inte att de båda gör samma sak.
Såhär ser instuktionerna för hur man använder input() ut i dokumentationen:

input([prompt])

Medan för print() ser det ut såhär:

print([object, ...][, sep=' '][, end='\n'][, file=sys.stdout]

Väldigt olika input med andra ord. Det du snackar om är en mänsklig missuppfattning av programmeringsspråket, man kopplar ofta saker som ser lika dant ut och i detta fallet tolkar det som att infon man skriver in hamnar innanför citationstecknen eftersom kolonet kommer där.

Texten i input() innanför citationstecknena är endast för att upplysa användaren att och vad han/hon ska mata in, det har egentligen inget med inmatningen att göra, det är själva funktionen input() som tar hand om det

Permalänk
Entusiast
Skrivet av Jepp:

Hej,

Ok jag börjar hajja. Polletten börjar trilla ner så att säga

Ändå får jag det bara att fungera delvis. När jag skriver i prompt så får jag problem.

På första raden skriver jag:

namn=input("Hej, vad heter du?: ") . Sedan sparar jag denna.
Sedan skriver jag in Olle efter kolontecknet. Sedan sparar jag. Jag skriver inte Olle med citattecken, dvs "Olle".

På rad 2 skriver jag:
print("Hej",namn, "Skoj råkas!"). Sedan sparar jag detta.

Sedan trycker jag F5.

Resultatet blir:

Hej, vad heter du?Olle

Jag trycker F5 en gång till och det blir:

0 Skoj råkas!

Jag vet inte om jag har uppfattat rätt om vad du gör men som jag uppfattar det så matar du in dina värden i kodningen och sparar det där, istället för att mata in det under körningen.

Detta är din kod, spara den som en .py fil, och kör den

namn=input("Hej, vad heter du?: ") print("Hej",namn, "Skoj råkas!")

Då kommer det se ut såhär i idle:

Hej, vad heter du?:

Sedan skriver du in ditt namn (och tryck enter):

Hej, vad heter du?: Olle

Sen visar den hälsningen med ditt namn:

Hej, vad heter du?: Olle Hej Olle Skoj råkas!

Och sist skriver den ut ">>>" vilket indikerar att körningen av programmet är färdig:

Hej, vad heter du?: Olle Hej Olle Skoj råkas! >>>

Testa det och sen, som Calle.Lid sa tidigare, kolla in The new Bostons Python tutorials på youtube, dom är otroligt bra för att lära sig vad alla olika delar du kan behöva gör. Det svåra kommer sen när du ska pussla ihop det till program

Permalänk
Medlem
Skrivet av Blargmode:

Texten i input() innanför citationstecknena är endast för att upplysa användaren att och vad han/hon ska mata in, det har egentligen inget med inmatningen att göra, det är själva funktionen input() som tar hand om det

Precis, det påverkar inte själva inmatningen. Att lägga in så konceptuellt motstående funktionalitet under ett funktionsnamn är bakvänt. Funktionen har ett tydligt syfte och ett tydligt namn men kan även utföra uppgifter som strider mot dess uppenbara användningsområde (skriva text till stdout) .

Det är fult.

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Entusiast
Skrivet av Teknocide:

Precis, det påverkar inte själva inmatningen. Att lägga in så konceptuellt motstående funktionalitet under ett funktionsnamn är bakvänt. Funktionen har ett tydligt syfte och ett tydligt namn men kan även utföra uppgifter som strider mot dess uppenbara användningsområde (skriva text till stdout) .

Det är fult.

Mjo jag är mer med på vad du menar nu, kan väll hålla med om att det inte är en snygg genväg, om man jämför med mer avancerade språk som C# med sin console.write("hej vad heter du?:"); för att ställa frågan och console.readLine(); för användarens input. Det gör ju samma sak men utan logiska kompromisser. Dock är det inte relevant här eftersom killen är nybörjare och måste få grepp om programmering över huvud taget, då känns det rätt att göra det så enkelt som möjligt, även om det innebär att göra fulingar här och där

Permalänk
Medlem

Tack. Det löste sig. Var bara jag som gjorde lite små fel

Visa signatur

jepp

Permalänk
Medlem

Det största felet jag gjorde var att jag skrev in namnet i skriptet och inte i konsolen *skratt*. Så kan det gå. Efter jag gjorde detta rätt så löste det sig. Tack för er hjälp dock.

Nu kom det upp ett nytt problem.

Det står:

Din uppgift är att skriva ett program som frågar om användarens namn, och högerjusterar
det så att det sista tecknet är på kolumn 70. Funktionen len(minsträng) ger dig längden av
minsträng. Spara värdet du får ut som i exemplet med input() i den föregående övningen.

Jag har joxat ett tag med detta och lessnade till slut eftersom jag inte får till det.

Så här gjorde jag:

På första raden - i skriptet - skrev jag:

namn = input("Hej, vad heter du?: "). Spara. F5 (exekvering)
I konsolen kom det då upp: Hej, vad heter du?:
Där - i konsolen - skrev jag in: Olle

Sedan ska det alltså bli en printsats som skriver ut Olle på kolumn 70.
Känns som om jag prövat det mesta.

Tyvärr kan jag ej visa hur jag skrivit eftersom det inte fungerade när jag gjorde förhandsgranskning.
Jag har dock provat flera metoder.



Visa signatur

jepp

Permalänk
Medlem
Skrivet av Jepp:

...
Sedan ska det alltså bli en printsats som skriver ut Olle på kolumn 70.
Känns som om jag prövat det mesta.

Tyvärr kan jag ej visa hur jag skrivit eftersom det inte fungerade när jag gjorde förhandsgranskning.
Jag har dock provat flera metoder.

Om du berättar vad det är du har prövat så får du hjälp på traven. Har du använt funktionen len() som uppgiftsbeskrivningen tipsar om?

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Medlem
Skrivet av Teknocide:

Om du berättar vad det är du har prövat så får du hjälp på traven. Har du använt funktionen len() som uppgiftsbeskrivningen tipsar om?

Jag har provat len men bara alltså att se hur den fungerar. Jag vet ej hur jag ska använda den i övningen. Jag har faktiskt inte den blekaste.

Ska man skriva i skript eller konsol?len verkar ju inte fungera i skript. Kanske är det så att funktioner bara funkar i konsol?

Visa signatur

jepp