鱼C论坛

 找回密码
 立即注册
查看: 90|回复: 2

求教下

[复制链接]
发表于 2024-5-14 16:35:28 | 显示全部楼层 |阅读模式

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

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

x
A  = [0] *3
for i in range(3):
        A[i] =[0] *3

A
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]


这个看不太明白。
为什么 会A[i] 赋值[0]*3

最后却是
A
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]

而不是A[i]
[[0],[0],[0]]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-5-14 16:35:46 | 显示全部楼层
这个问题出现在你对变量A的赋值上。虽然你使用了 *3 来赋值给A,但是这里的 * 是作为乘法运算符来使用的,并不会将3复制给A。

如果你想要将A赋值为[*, *, *],可以使用以下方法:
A = ['*'] * 3
这样就会创建一个包含三个 '*' 的列表,然后将这个列表赋值给变量A。

接下来你的循环:
for i in range(3):
        A = ['*'] * 3
这个循环会执行三次,每次都会将['*', '*', '*']赋值给A,但是由于这个赋值是在循环中发生的,所以每一次赋值都会覆盖前一次的赋值。所以最后循环结束时,A的值仍然是['*', '*', '*']。

希望这样的解释能帮到你。如果还有其他问题,请随时提问!

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

使用道具 举报

发表于 2024-5-14 17:27:25 | 显示全部楼层
[0] *3 的结果就是 [0, 0, 0] 呀

[[0]] *3 才是 [[0],[0],[0]]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-24 03:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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