【发布时间】:2013-10-27 15:33:54
【问题描述】:
这是最终产品。如果其他人有任何削减它的技巧,请告诉我!非常感谢您的帮助!
def triple_cut(deck):
''' (list of int) -> NoneType
Modify deck by finding the first joker and putting all the cards above it
to the bottom of deck, and all the cards below the second joker to the top
of deck.
>>> deck = [2, 7, 3, 27, 11, 23, 28, 1, 6, 9, 13, 4]
>>> triple_cut(deck)
>>> deck
[1, 6, 9, 13, 4, 27, 11, 23, 28, 2, 7, 3]
'''
joker1 = deck.index(JOKER1)
joker2 = deck.index(JOKER2)
first = min(joker1, joker2)
first_cards = []
for cards in range(len(deck[:first])):
cards = 0
pop = deck.pop(cards)
first_cards.append(pop)
joker1 = deck.index(JOKER1)
joker2 = deck.index(JOKER2)
second = max(joker1, joker2)
second_cards = []
for cards in deck[second + 1:]:
pop = deck.pop(deck.index(cards))
second_cards.append(pop)
second_cards.reverse()
for card in second_cards:
deck.insert(0, card)
deck.extend(first_cards)
我需要输入更多,因为我的帖子主要是代码:请添加更多详细信息 sss ss
【问题讨论】:
-
这将是一个很好的例子来学习一些 TDD 顺便说一句。您可以在其中逐步开发代码,然后再进行性能测试。
-
我敢打赌,你可以用 list slices 做得很好。
标签: python list indexing append