ein kleines quiz

Stellt hier eure Projekte vor.
Internetseiten, Skripte, und alles andere bzgl. Python.
bremer
User
Beiträge: 109
Registriert: Sonntag 25. Mai 2008, 00:13

Mittwoch 17. September 2008, 02:41

Man braucht kein textwrap.dedent um das Einrückungsproblem zu beheben.

Code: Alles auswählen

multistring = """
--------------------------------
######Coded by Rootmentor#######
--------------------------------

Willkommen beim Quiz von Rootmentor

Erste frage: Mit was wurde dieses quiz Programmiert?
1. Php
2. Python
3. Html"""

def print_multi_line():
    print multistring
    antwort = raw_input("Welche Sprache ist es? ")

print_multi_line()
BlackJack

Mittwoch 17. September 2008, 06:16

Versuchs doch mal bei einer Zeichenkette die eingrückt ist. Oder eine nicht eingerückte Zeichenkette in einer Funktion ohne das die Lesbarkeit leidet.
Rootmentor
User
Beiträge: 54
Registriert: Sonntag 17. August 2008, 18:26
Wohnort: Lingen
Kontaktdaten:

Donnerstag 18. September 2008, 15:35

Danke das mit den leerzeichen gefällt mir x)
Ich glaube das werde ich mir angewöhnen
Benutzeravatar
Klip
User
Beiträge: 98
Registriert: Donnerstag 10. August 2006, 20:39

Donnerstag 18. September 2008, 17:41

bremer hat geschrieben:Man braucht kein textwrap.dedent um das Einrückungsproblem zu beheben.

Code: Alles auswählen

multistring = """
--------------------------------
######Coded by Rootmentor#######
--------------------------------

Willkommen beim Quiz von Rootmentor

Erste frage: Mit was wurde dieses quiz Programmiert?
1. Php
2. Python
3. Html"""

def print_multi_line():
    print multistring
    antwort = raw_input("Welche Sprache ist es? ")

print_multi_line()
Böse globale Variable!
Benutzeravatar
name
User
Beiträge: 254
Registriert: Dienstag 5. September 2006, 16:35
Wohnort: Wien
Kontaktdaten:

Donnerstag 18. September 2008, 18:04

Neben dem ganzen multi-line-string getue eine Frage an den OP: a) Hat dir mein Beispiel geholfen und b) Wie sieht das Programm jetzt aus.
Ohloh | Mein Blog | Jabber: segfaulthunter@swissjabber.eu | asynchia – asynchrone Netzwerkbibliothek

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Donnerstag 18. September 2008, 18:29

Klip hat geschrieben:Böse globale Variable!
Naja, so schlimm ist das hier nicht - es ist ja nur ein Lesezugriff.

Allerdings gibt es auch keinen guten Grund, multistring nicht im lokalen Namensraum der Funktion zu definieren.
Benutzeravatar
name
User
Beiträge: 254
Registriert: Dienstag 5. September 2006, 16:35
Wohnort: Wien
Kontaktdaten:

Donnerstag 18. September 2008, 18:31

numerix hat geschrieben:
Klip hat geschrieben:Böse globale Variable!
Naja, so schlimm ist das hier nicht - es ist ja nur ein Lesezugriff.

Allerdings gibt es auch keinen guten Grund, multistring nicht im lokalen Namensraum der Funktion zu definieren.
Womit wir wieder am Anfang, dem Einrueckungsproblem, waeren. Ich persoenlich finde """ strings eingerueckt grauslich, weil die folgenen Zeilen sehen immer so aus als waeren sie auf Modul-Ebene.
Ohloh | Mein Blog | Jabber: segfaulthunter@swissjabber.eu | asynchia – asynchrone Netzwerkbibliothek

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.
Benutzeravatar
Trundle
User
Beiträge: 591
Registriert: Dienstag 3. Juli 2007, 16:45

Donnerstag 18. September 2008, 18:52

name hat geschrieben:Womit wir wieder am Anfang, dem Einrueckungsproblem, waeren. Ich persoenlich finde """ strings eingerueckt grauslich, weil die folgenen Zeilen sehen immer so aus als waeren sie auf Modul-Ebene.
Deshalb wurde ja bereits festgestellt, dass ``textwrap.dedent`` existiert. Oder verstehe ich gerade etwas falsch?
"Der Dumme erwartet viel. Der Denkende sagt wenig." ("Herr Keuner" -- Bertolt Brecht)
Rootmentor
User
Beiträge: 54
Registriert: Sonntag 17. August 2008, 18:26
Wohnort: Lingen
Kontaktdaten:

Donnerstag 18. September 2008, 19:09

ja dein beispiel war schon sehr hilfreich so sietzt jetzt aus

Code: Alles auswählen

#!/usr/bin/env python
import os
int = 0
punktinfo = "Dein punktestand:"
print "--------------------------------"
print "######Coded by Rootmentor#######"
print "--------------------------------"
print "Wilkommen beim Quiz von Rootmentor"

print "Erste frage: Mit was wurde dieses quiz Programmiert? \n 1. Php: \n 2. Pyhton: \n 3. Html: "
antwort = raw_input()


if antwort == "2":
    int += 1
    print "Richtig du dein punktestand"
    print int
else:
        print "Das ist leider Falsch"
        print "Die antwort ist : Python"

print " Nun kommt die zweite Frage: Welcher Computer ist der beste? \n 1.windoof \n" + "2. Mac mini \n" + "3.Portablepc"

antwort2 = raw_input()

if antwort2 == "2":
    int += 1
    print "Richtig dein Punktestand:"
    print int
else:
      print "Das ist leider Falsch, Dein Punktestand:"
      print int
      print "Die richtige antwort ist : Macmini"


print "Bereit fuer die Letzte alles entscheidene Frage?Gut!Hier kommt sie!"

print "Wie lange habe ich fuer dieses quiz gebraucht? /n 1. ein tag :\n 2. Eine woche :\n 3. Zwei Stunden :\n 4.vier bis sechs tage"

antwort3 = raw_input()

if antwort3 == "3":
    int += 1 
    print "Richtig dein Punktestand"
    print int
else:
    print "Das ist leider Falsch, Dein Punktestand:"
    print int
    print "Die richtige antwort ist : Zwei Stunden"


print "So das wars mit dem quiz. Dein punktestand betraegt"
print int
print "Bis dann!"

exit()
Benutzeravatar
name
User
Beiträge: 254
Registriert: Dienstag 5. September 2006, 16:35
Wohnort: Wien
Kontaktdaten:

Donnerstag 18. September 2008, 19:22

Rootmentor hat geschrieben:ja dein beispiel war schon sehr hilfreich so sietzt jetzt aus
Und was genau von meinem Beispiel hast du jetzt bitte verwendet? :shock:
Beherz dir mal das ganze schoen in Funktionen aufzuteilen, wie eben in meinem Beispiel. Das sollte es ja zeigen.
Ohloh | Mein Blog | Jabber: segfaulthunter@swissjabber.eu | asynchia – asynchrone Netzwerkbibliothek

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.
Rootmentor
User
Beiträge: 54
Registriert: Sonntag 17. August 2008, 18:26
Wohnort: Lingen
Kontaktdaten:

Donnerstag 18. September 2008, 19:46

was bringt das wenn ich jede frage + antworten in eine funktion schreibe?
Benutzeravatar
name
User
Beiträge: 254
Registriert: Dienstag 5. September 2006, 16:35
Wohnort: Wien
Kontaktdaten:

Donnerstag 18. September 2008, 19:48

Rootmentor hat geschrieben:was bringt das wenn ich jede frage + antworten in eine funktion schreibe?
Hast du mein Bsp. nur ein paar Minuten angeschaut, scheint naemlich nicht so.

PS: Solltest du es wirklich nicht angeschaut haben, was ich vermute, empfinde ich es als Frechheit mir gegenueber. Es mag zwar nicht ein aufwaendiges Programm sein, aber trotzdem hat es mich (ein bisschen) Zeit gekostet.
Solltest du es doch angeschaut haben hast du es nicht verstanden. Schau es dir nochmal an. Da hast du schoen die Fragen in einer Liste, und brauchst nur diese aendern fuer neue Fragen.
Zuletzt geändert von name am Donnerstag 18. September 2008, 20:04, insgesamt 3-mal geändert.
Ohloh | Mein Blog | Jabber: segfaulthunter@swissjabber.eu | asynchia – asynchrone Netzwerkbibliothek

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.
BlackJack

Donnerstag 18. September 2008, 20:00

@Rootmentor: Den Namen `int` sollte man nicht neu binden.
Rootmentor
User
Beiträge: 54
Registriert: Sonntag 17. August 2008, 18:26
Wohnort: Lingen
Kontaktdaten:

Donnerstag 18. September 2008, 20:02

ich kapier das nich is mir zu hoch
Benutzeravatar
name
User
Beiträge: 254
Registriert: Dienstag 5. September 2006, 16:35
Wohnort: Wien
Kontaktdaten:

Donnerstag 18. September 2008, 20:04

Rootmentor hat geschrieben:ich kapier das nich is mir zu hoch
Ich empfehle das Tutorial zu machen falls du es noch nicht gemacht hast, dann wieder hier zurueck kommen. Danke.
Ohloh | Mein Blog | Jabber: segfaulthunter@swissjabber.eu | asynchia – asynchrone Netzwerkbibliothek

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.
Antworten