Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: [Opgelost]Fout in Python-script, maar wat?  (gelezen 1669 keer)

[Opgelost]Fout in Python-script, maar wat?
« Gepost op: 2010/01/05, 09:09:32 »
Hallo,

in Python onder Windows krijg ik een interpreter error bij de volgende code:
loop = 1
c = 0
while loop == 1:
    print "Choose the sufficient option..."    
    print "1: Addition"
    print "2: Substraction"
    print "3: Multiplication"
    print "4: Division"
    print "5: Exit"
    choice = input("..by pressing the correspondig number.")
    if c == 1:
        n1 = input("Add this: ")
        n2 = input("to this: ")
        n3 = n1+n2
        print n3
    if c == 2:
        n1 = input("Substract this: ")
        n2 = input("With this: ")
        n3 = n1-n2
        print n3
    if c == 3:
        n1 = input("Multiply this: ")
        n2 = input("by this: ")
        n3 = n1*n2
        print n3
    if c == 4:
        n1 = input("Divide this: ")
        n2 = input("by this: ")
        n3 = n1/n2
        print n3
    if c == 5:
        loop = "0"
print "Thank you for using PyCalc!"
De interpretator loopt vast op de laatste dubbele aanhalingstekens in regel 4, achter ...met deze foutmelding:
"SyntaxError: invalid syntax (line 4, offset 42): print "Choose the sufficient option""
Naar mijn weten zou het goed moeten zijn, maar kennelijk niet. Weet iemand wat er aan de hand is?

Stefan :)
« Laatst bewerkt op: 2010/01/05, 19:36:11 door SteefuitHeerlen »
Bezoek ook eens de Ubuntu NL IRC-kanalen! |

Re: Fout in Python-script, maar wat?
« Reactie #1 Gepost op: 2010/01/05, 11:45:44 »
Hebt ge misschien Python 3.x geinstalleerd? Daar is "print" een functie geworden.

print("Choose the sufficient option...")Enzoverder...

Ik raad echter aan om Python 2.6 te installeren, aangezien de meeste documentatie en third party modules voor de 2.x reeks zijn.

Edit: naast de syntax error zal uw programma ook nooit fatsoenlijk lopen. Aangezien ge de gebruiker zijn antwoord in "choice" steekt, maar dan gaat controleren op de variabele "c".

Dit is mijn versie (niet getest, zit op het werk):
#!/usr/bin/env python

choice = 0
while True:
    print "Choose the sufficient option..."    
    print "1: Addition"
    print "2: Substraction"
    print "3: Multiplication"
    print "4: Division"
    print "5: Exit"
    choice = raw_input("..by pressing the correspondig number.")
    if choice == '1':
        n1 = input("Add this: ")
        n2 = input("to this: ")
        n3 = n1+n2
        print n3
    elif choice == '2':
        n1 = input("Substract this: ")
        n2 = input("With this: ")
        n3 = n1-n2
        print n3
    elif choice == '3':
        n1 = input("Multiply this: ")
        n2 = input("by this: ")
        n3 = n1*n2
        print n3
    elif choice == '4':
        n1 = input("Divide this: ")
        n2 = input("by this: ")
        n3 = n1/n2
        print n3
    elif choice == '5':
        break
    elif choice <= '0' or choice > '5':
        print "Not a valid option!"

print "Thank you for using PyCalc!"

« Laatst bewerkt op: 2010/01/05, 18:01:02 door Nunslaughter »

Re: Fout in Python-script, maar wat?
« Reactie #2 Gepost op: 2010/01/05, 16:38:57 »
sufficient operation? (sufficient = voldoende)
I use a Unix-based system, that means I'll get laid as often as I have to reboot.
LibSylph
SeySayux.net

Offline Ronnie

  • Lid
    • ronnie.vd.c
Re: Fout in Python-script, maar wat?
« Reactie #3 Gepost op: 2010/01/05, 17:31:18 »
beide versies werken (geven geen error) bij mij. Die van Nunslaughter is wel een beetje beter.

Nog een kleine opmerking. even opletten bij division. Probeer maar eens de getallen 3 & 0 --> Levert een error op.
Ben je ook blij dat Ubuntu zo toegankelijk en gratis is, en wil je graag net als ik iets terugdoen, kijk dan eens rond bij mwanzo, dé poort naar het bijdragen aan Ubuntu en haar gemeenschap!

Documentatie Terminal

Re: Fout in Python-script, maar wat?
« Reactie #4 Gepost op: 2010/01/05, 18:54:54 »
Nunslaughter: A, kijk, die fout was me nog niet opgevallen. De compiler kwam niet eens tot daar ;). Ik weet niet welke versie van Python de portable IDE gebruikt, dat zal ik even moeten nakijken.

SeySayux: Het Engels is na het Nederlands mijn beste taal, dus om je twijfels weg te nemen: sufficient kan inderdaad 'voldoende' betekenen, maar ook 'toereikend(e)'/'meest voldoenend aan uw wensen' (en ja, die laatste is nog al scheef, on-the-go, vertaald).
Welke opdracht kan ik dan voor divide/division gebruiken?

En welke opdracht vervangt print in 3.x?

Stefan

Re: Fout in Python-script, maar wat?
« Reactie #5 Gepost op: 2010/01/05, 19:12:13 »
En welke opdracht vervangt print in 3.x?

Staat ook in mijn postje:
print("Choose the sufficient option...")
Maar ik raad dan dus aan om ofwel Python 2.6 te installeren of een tutorial voor 3.x te zoeken.

Re: Fout in Python-script, maar wat?
« Reactie #6 Gepost op: 2010/01/05, 19:35:42 »
Pardon, daar heb ik in de snelheid overheen gelezen :). Ik heb zowel 2.6 en 3 geïnstalleerd in Ubuntu, maar ik ga me richten op 2.6, die komt het best gedocumenteerd op mij over.

Stefan