2015-12-07 16 views
1

У меня есть кортеж, как:Непрерывно subtracting- Python 3.X

mytuple = (10,10) 
mylist = [] 
mylist.append(mytuple) 

Я хотел бы вычесть 1 из каждой итерации х в mytuple, пока не только 0, так что MyList будет выглядеть

[(10,10),(9,10),(8,10),(7,10),etc.,(0,10)] 

Я думал о цикле for, но я не мог понять, как получить этот результат. Благодарю.

ответ

0

диапазон позволяет указать шаг, сделанный с помощью итерации, который позволяет вам делать что-то вроде этого:

mytuple = (10,10) 
mylist = [] 
for i in range(mytuple[0], -1, -1): 
    mylist.append((i, mytuple[1])) 
print(mylist) 

Увидеть это в действии здесь: http://ideone.com/wnM5zb

1
mytuple = (10,10) 
mylist = [] 
mylist.append(mytuple) 
# store mytuple's first value 
val = mytuple[0] 

# while val is greater than 0 
while (val > 0): 
    # subtract 1 from val 
    val -= 1 
    # generate tuple and add to list 
    mylist.append((val,10)) 
print(mylist) 
1

попробовать что-то вроде:

mytuple = (10,10) 
mylist = [(i,mytuple[1]) for i in range(mytuple[0],-1,-1)]