Преобразовать список в последовательность переменных - PullRequest
0 голосов
/ 14 апреля 2010

Мне было интересно, возможно ли это ...

У меня есть последовательность переменных, которые должны быть присвоены переменным do.something (a, b) a и b соответственно.

Примерно так:

# # Have a list of sequenced variables.
list = 2:90 , 1:140 , 3:-40 , 4:60

# # "Template" on where to assign the variables from the list.    
do.something (a,b)
# # Assign the variables from the list in a sequence with possibility of "in between" functions like print and time.sleep() added.

do.something (2,90)
time.sleep(1)
print "Did something (%d,%d)" % (# # vars from list?)   
do.something (1,140)
time.sleep(1)
print "Did something (%d,%d)" % (# # vars from list?)  
do.something (3,-40)
time.sleep(1)
print "Did something (%d,%d)" % (# # vars from list?)  
do.something (4,60)
time.sleep(1)
print "Did something (%d,%d)" % (# # vars from list?)  

Есть идеи?

1 Ответ

4 голосов
/ 14 апреля 2010
arglist = [(2, 90), (1, 140), (3, -40), (4, 60)]
for args in arglist:
    do.something(*args)
    time.sleep(1)
    print "Did something (%d,%d)" % args

* означает «использовать значения в этом кортеже в качестве аргументов». Совет: вы можете сделать то же самое с аргументами ключевых слов, используя ** и dict.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...