x1, y1, a1, b1, x2, y2 = int(input()), int(input()), int(input()), int(input()), int(input()), int(input())

Mein Problem ist es, 6 Zahlen zu lesen, die jeweils in einer neuen Zeile stehen. Wie mache ich das lakonischer als mein Code oben?

4
nhtrnm 9 Okt. 2012 im 19:35

3 Antworten

Beste Antwort
x1, y1, a1, b1, x2, y2 = (int(input()) for _ in range(6))

Ersetzen Sie range durch xrange und input durch raw_input in Python 2.

8
Fred Foo 9 Okt. 2012 im 15:42
x,y,z,w=map(int,input().split()) #add input in form 1 2 3 4


>>> x,y,z,w=map(int,input().split()) 
1 2 3 4
>>> x
1
>>> y
2
>>> w
4
>>> z
3
1
Ashwini Chaudhary 9 Okt. 2012 im 15:38

Ich würde Wörterbücher verwenden:

parm = {}
var_names = ['x1', 'y1', 'a1', 'b1', 'x2', 'y2']
for var_name in var_names:
    parm[var_name] = int(input())

Dann können Sie Wörterbuchschlüssel in Variablen umwandeln, aber ich halte das nicht für eine gute Idee:

locals().update(parm)
0
Don 9 Okt. 2012 im 15:45