Первая функция просто возвращает случайный список во всех непустых списках. Вторая функция возвращает случайный список, если последний элемент текущего списка (который возвращается из первой функции) ниже, чем другой список в состоянии или если список пуст.
Код: Выделить всё
import random
def fooOne(state):
lst = [x for x in state if len(x) > 0]
return random.choice(lst)
def fooTwo(state,current):
lst2 = [x for x in state if len(x) == 0 or x[-1] > current[-1]]
return random.choice(lst2)
state = [[3, 2, 1],
[],
[]]
cur = fooOne(state)
temp = fooTwo(state,cur)
print("State before append(): {}".format(state))
temp.append(cur.pop())
print("State after append(): {}".format(state))
< /code>
Обе функции возвращают разные списки. Я назначаю эти списки двум разным переменным, называемым cur output: < /p>
Код: Выделить всё
State before append(): [[3, 2, 1], [], []]
State after append(): [[3, 2], [], [1]]
Подробнее здесь: https://stackoverflow.com/questions/601 ... other-list
Мобильная версия