鱼C论坛

 找回密码
 立即注册
查看: 210|回复: 1

求大家帮我看看这个代码是怎么回事

[复制链接]
发表于 2024-5-31 10:32:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
# 设置一个初始数量

count = 100

time = 0

# 创建100的统计

count100 = []

# 创建10的统计

count10 = []

while count < 1000:

    # 如果满足100的添加
    
    if count >= 100 and len(count100) < 8:
        count100.append(29)
        count -= 100
    

    # 设置满足 10 的添加

    if count >= 10 and len(count10) < 8:
        count10.append(29)
        count -= 10

    # 100的矿 天数减少一天

    for m in range(len(count100)):
        if len(count100) > 0:
            if count100[m] == 0:
                count100.pop(m)
            else:
                count100[m] -= 1
            
  # 10的矿 天数减少一天
    
    for i in range(len(count10)):
        print(i)
        if len(count10) > 0:
            if count10[i] == 0:
                print(i)
                count10.pop(i)
            else:
                count10[i] -= 1
            
    
    count = count + (len(count100) * 4) + (len(count10) * 0.4)
    time += 1

    print('第%d天的金币数量为%d' %(time,count))


这个到判断 0 天的时候为什么会报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-5-31 10:33:20 | 显示全部楼层
在代码中,判断0天的条件是`if count100 == 0`和`if count10 == 0`,但是这里应该使用`len(count100) == 0`和`len(count10) == 0`来判断列表是否为空,因为count100和count10都是列表类型。

所以,你需要将代码中的`if count100 == 0`和`if count10 == 0`修改为`if len(count100) == 0`和`if len(count10) == 0`。修改后的代码如下:
# 设置一个初始数量
count = 100
time = 0

# 创建100的统计
count100 = []

# 创建10的统计
count10 = []

while count < 1000:
    # 如果满足100的添加
    if count >= 100 and len(count100) < 8:
        count100.append(29)
        count -= 100

    # 设置满足 10 的添加
    if count >= 10 and len(count10) < 8:
        count10.append(29)
        count -= 10

    # 100的矿 天数减少一天
    for m in range(len(count100)):
        if len(count100) > 0:
            if len(count100) == 0:
                count100.pop(m)
            else:
                count100[m] -= 1

    # 10的矿 天数减少一天
    for i in range(len(count10)):
        if len(count10) > 0:
            if len(count10) == 0:
                count10.pop(i)
            else:
                count10[i] -= 1

    count = count + (len(count100) * 4) + (len(count10) * 0.4)
    time += 1

    print('第%d天的金币数量为%d' %(time,count))

希望能够解决你的问题!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 18:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表