Also mache ich ein Programm, das nach Benutzereingaben fragt, um eine Variable zu definieren. Ich möchte, dass sie weiterhin dazu auffordert, Variablen zu definieren, bis sie das Programm beenden. I.E. es fordert A1 auf: und sie geben 2 ein, und dann fordert es A2 auf: und sie geben 6 ein, und so weiter, bis sie Enter drücken, ohne etwas einzugeben. Das Problem, das ich habe, ist, dass ich für jedes Mal, wenn es Schleifen gibt, eindeutige Variablen brauche. Ich möchte auch, dass diese Variablen auf die außerhalb der Funktion definierten Variablen zugreifen können, ohne global zu verwenden. HierUnendlich viele einzigartige generierte Variablen, python
ist, was ich habe:
def userinput():
n = 0
while n >= 0:
c = str(n)
v = 'A'+c+':'
v = input(v)
if v != '':
n += 1
else:
while v == '':
break
break
userinput()
Wie Sie sehen können, was es weiß gesetzt ist die Eingabe des Benutzers gleich v jeder Iteration. Ich möchte, dass es die erste Eingabe in A0 setzt, dann die nächste Iteration, ich möchte, dass die Eingabe auf A1 gesetzt wird, und so weiter und so fort. Dann, nachdem der Benutzer das ausgeführt hat, möchte ich in der Lage sein, die Variable A1 aufzurufen und ein Ergebnis zu erhalten. Irgendwelche Ideen?
EDIT: Also, hier ist mein Programm. Es nimmt eine Eingabe, fügt die Eingabe zu einer Liste hinzu und konvertiert dann die Listenelemente in globale Variablen. Ich wollte nicht global, aber ich musste.
def userinput():
n = 0
values = []
while True:
c = str(n)
v = 'A'+c+':'
v = input(v)
values.append(v)
if v != '':
n += 1
else:
while v == '':
values.remove(v)
break
break
for x, val in enumerate(values):
globals()['A%d' % (x)] = val
return values
data = userinput()
einen Behälter verwenden –