鱼C论坛

 找回密码
 立即注册
查看: 1766|回复: 5

[已解决]Python随机生成88*88列表

[复制链接]
发表于 2022-7-13 23:36:31 From FishC Mobile | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 然小兆同学 于 2022-7-13 23:47 编辑

为什么用while循环生成只有第一行?

import random
sum = []
i = 0
j = 0
n = 0
while i <= 88:
    sum.append([])
    while j <= 88:
        sum[i].append(random.randint(0,1024))
        j += 1
        print(sum[i])
    i += 1


但是用for  i  in   这个就可以顺利生成。

import random
sum = []
i = 0
j = 0
n = 0
for i in range(88):
    sum.append([])
    for j in range(88):
        sum[i].append(random.randint(0,1024))      
        print(sum[i])

为什么用while不可以实现呀?
最佳答案
2022-7-13 23:59:38
一个问题
在for循环中,每次执行完for j in range(88),再执行for j in range(88)的时候j就会等于0
但在while循环中,第一次执行完while j <= 88之后,j就等于89了,再执行一次while j <= 88,因为j <= 88条件不满足,所以直接跳过了while循环,导致while j <= 88只执行了一次
所以应将代码改为这样
import random
sum = []
i = 0
j = 0
n = 0
while i <= 88:
    sum.append([])
    j = 0
    while j <= 88:
        sum.append(random.randint(0,1024))
        j += 1
        print(sum)
    i += 1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-7-13 23:42:17 | 显示全部楼层
图片应该可以添加进文本吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-7-13 23:48:14 | 显示全部楼层
咕咕鸭 发表于 2022-7-13 23:42
图片应该可以添加进文本吧

我现在加入文本代码了,帮忙看看,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-13 23:59:38 | 显示全部楼层    本楼为最佳答案   
一个问题
在for循环中,每次执行完for j in range(88),再执行for j in range(88)的时候j就会等于0
但在while循环中,第一次执行完while j <= 88之后,j就等于89了,再执行一次while j <= 88,因为j <= 88条件不满足,所以直接跳过了while循环,导致while j <= 88只执行了一次
所以应将代码改为这样
import random
sum = []
i = 0
j = 0
n = 0
while i <= 88:
    sum.append([])
    j = 0
    while j <= 88:
        sum.append(random.randint(0,1024))
        j += 1
        print(sum)
    i += 1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-14 12:06:22 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-7-14 17:02:43 | 显示全部楼层
我觉得,应该是
import random
sum = []
i = 0
j = 0
n = 0
while i <= 88:
    sum.append([])
    j = 0
    while j <= 88:
        sum[i].append(random.randint(0,1024))
        j += 1
        
    i += 1
print(sum)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-28 16:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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