>ich bin gerade etwas verwirrt. Ich versuche gerade eine Zahl aus der
>Texteingabe in eine kleine if schleife einzubauen. Nur gelinkt es mir
>nicht. Python beendet ohne Fehlermeldung. Wie mache ich das denn
>richtig?
if-Schleifen gibt es nicht ;-)
Wenn schon, dann if-Treppen .. ok, ja
1 | Daniel@dellPC /home/Daniel
|
2 | $ cat > test.py <<EOF
|
3 | > print('gebe die Zahl 1 ein')
|
4 | > zahlinput= input()
|
5 | > print (zahlinput)
|
6 | >
|
7 | >
|
8 | > if zahlinput == 1:
|
9 | > print('Das war die 1')
|
10 | >
|
11 | > if zahlinput == 2:
|
12 | > print('Und das die 2')
|
13 | > EOF
|
14 |
|
15 | Daniel@dellPC /home/Daniel
|
16 | $ chmod 755 test.py
|
17 |
|
18 | Daniel@dellPC /home/Daniel
|
19 | $ python ./test.py
|
20 | gebe die Zahl 1 ein
|
21 | 1
|
22 | 1
|
23 | Das war die 1
|
dein Code ist ok.
Das Problem liegt woanders.
Wie rufst das Program auf?
Keine shebang Zeile?
Entgegen den Postings oben, liefert input() keinen string zurück.
Das tut raw_input()
1 | >>> type(input())
|
2 | 1
|
3 | <type 'int'>
|
4 | >>> type(raw_input())
|
5 | 1
|
6 | <type 'str'>
|
1 | help(input)
|
2 | Help on built-in function input in module __builtin__:
|
3 |
|
4 | input(...)
|
5 | input([prompt]) -> value
|
6 |
|
7 | Equivalent to eval(raw_input(prompt)).
|
1 | Help on built-in function raw_input in module __builtin__:
|
2 |
|
3 | raw_input(...)
|
4 | raw_input([prompt]) -> string
|
5 |
|
6 | Read a string from standard input. The trailing newline is stripped.
|
7 | If the user hits EOF (Unix: Ctl-D, Windows: Ctl-Z+Return), raise EOFError.
|
8 | On Unix, GNU readline is used if enabled. The prompt string, if given,
|
9 | is printed without a trailing newline before reading.
|
10 | (END)
|