首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >需要将现有列表中的每个列表元素减1,并将其追加到新列表中

需要将现有列表中的每个列表元素减1,并将其追加到新列表中
EN

Stack Overflow用户
提问于 2014-12-07 07:43:40
回答 1查看 19关注 0票数 0

下面是我需要帮助的代码:

代码语言:javascript
运行
复制
import random
def GetUserInput():

    numStacks = int(input("Enter an integer between 1 and 45 (inclusive): "))
    while numStacks < 1 or numStacks > 45:
        print("Number is invalid.")
        return numStacks

    createInitialStacks(numStacks)

def createInitialStacks(numStacks):       
    print("Number of stacks:", numStacks)
    stacks = []
    cards = 45

    for card in range(numStacks - 1):
        value = random.randint(1, (cards + 1) - numStacks)
        stacks.append(value)
        numStacks -= 1
        cards -= value
    stacks.append(cards + 1 - numStacks)         

    print("Stack =",stacks)

def playRound(stacks):
    stacksResult = []
    stacksResult = [x-1 for x in stacks if x > 1]
    print("New Stack =",stacksResult)

下面是我的输出:

代码语言:javascript
运行
复制
Enter an integer between 1 and 45 (inclusive): 4
Number of stacks: 4
Stack = [6, 30, 4, 5]

输出应如下所示:

代码语言:javascript
运行
复制
Enter an integer between 1 and 45 (inclusive): 4
Number of stacks: 4
Stack = [6, 30, 4, 5]
New Stack = [5, 29, 3, 4]

此外,如果新堆栈中有任何零,则需要删除它们。

EN

回答 1

Stack Overflow用户

发布于 2014-12-07 08:03:52

如果x>1,则对于堆栈中的x,stacksResult = x-1

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27337858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档