Python:使用与outcom相同的变量绘制多行

2024-05-09 18:29:01 发布

您现在位置:Python中文网/ 问答频道 /正文

为了上学,我必须制定一个计划,计划你需要掷多少次骰子才能买到所有东西,每次都有不同数额的现金。为了计算骰子的滚动等脚本工作正常,但我不知道如何使情节。以下是我的代码,用于计算不同金额的起始现金:

money = [2500, 2000, 1500, 1000, 500, 0]
count = 0
for value in money:    
        while True:
            throw()
            piece.move(distance)
            count = count + 1
            start()
            buy()
            if (poslen) == 36:
                print("It took", count,"rolls.")
                plt()
                break

之后我想做一个情节如下:

def plt():
    money = [0,500,1000,1500,2000,2500]
    line0 = [count]
    line500 = [count]
    line1000 = [count]
    line1500 = [count]
    line2000 = [count]
    line2500 = [count]
    plt.xlabel("Amount of money")
    plt.ylabel("Amount of throws")
    plt.title("Throws with varying amounts of money")
    plt.plot(money, line0)
    plt.plot(money, line500)
    plt.plot(money, line1000)
    plt.plot(money, line1500)
    plt.plot(money, line2000)
    plt.plot(money, line2500)
    plt.show()

当然,每行的可变计数都是不同的(因为购买东西需要更多的轮次)。所以我的问题是如何为每一行打印正确的Y值?(我希望我的问题不要含糊不清)


Tags: ofplotcountplt骰子计划情节money
1条回答
网友
1楼 · 发布于 2024-05-09 18:29:01

假定已经工作的代码是不完整的:poslenthrowstartbuydistance都丢失了,所以我不能确切地确定您在那里做了什么,但看起来您的循环结构不必要地复杂。这个怎么样?你知道吗

for value in money:
    while not poslen == 36:
        throw()
        piece.move(distance)
        count = count + 1
        start()
        buy()
    print("Het duurde", count, "worpen voordat je alles had.")

plt()

它也非常可疑value没有在任何地方使用。这些谜团并不能帮助我们理解您的代码应该实现什么。你知道吗

至于plt函数,我建议您将各种计数存储在某个容器中。可能是一本字典。我不清楚您究竟是如何生成数据的,但是如果您设法将它们放入字典(我们称之为line),那么plt可能会如下所示:

def plt():
    for n, data in line.items():
        plt.plot(money, data, label=str(n))

    plt.xlabel("Amount of money")
    plt.ylabel("Amount of throws")
    plt.title("Throws with varying amounts of money")

相关问题 更多 >