Angenommen, ich habe einige Zeichenfolgen, die niemals eine Schleife verlassen, sondern einen Zahlenzähler, den ich global brauche. Statt ...Ist es möglich, einen String aus einem zurückgegebenen Tupel in einer Zeile zu einem Integer hinzuzufügen?
outside_int = 0
def string_Grabber(stuff):
my_string = ''
my_number = 0
for i in range(who_cares):
#stuff that concatenates my_string
if this_happens():
my_number += 1
return my_string, my_number
for things in another_loop:
loop_string = string_Grabber(things)[0]
outside_int += string_Grabber(things)[1]
... Gibt es eine Möglichkeit, es in einer Zeile zu tun, so dass ich bis zweimal die (potentiell teuren) Funktion nicht aufrufen? Wie:
loop_string, outside_int = stringGrabber(things)(0, += 1)
das wahr ist. Ich werde der Funktion nur zusätzliche Argumente hinzufügen, aber danke, dass Sie meine Neugierde unterhalten haben. –
Wenn Sie "outside_int" als Argument in function hinzufügen, wird es nur für die Funktion "local" gemacht. Die globale Variable "outside_int" ändert sich nicht. Fügen Sie es nicht als Argument in der Funktion hinzu. –