python新版第24章杨辉三角形
老师请看图片,为什么你写的代码for循环迭代下次时候原值会自动变成0,我的怎么不会?一样的代码...# 初始化杨辉三角形
# 创建一个10*10的二维列表,并将所有的元素初始化为0
triangle = []
for i in range(10):
triangle.append([])
for j in range(10):
triangle.append(0)
# 计算杨辉三角形
# 根据观察,我们知道杨辉三角形左右两边的元素均为1
for i in range(10):
triangle = 1
triangle = 1
print(triangle)
print('******分割线********')
print('******分割线********')
a=[]*10
for i in range(10):
a=1
a=1
print(a) 把 a = [] * 10 换成 a = [ for i in range(10)]
a = [] * 10 里面的所有列表都是同一个地址,改变其中一个其它的都跟着变
>>> a = [] * 10
>>> a
[, , , , , , , , , ]
>>> a = 1
>>> a
[[1, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0], , , , , , , , ]
>>> a = [ for i in range(10)]
>>> a
[, , , , , , , , , ]
>>> a = 1
>>> a
[[1, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], , , , , , , , ]
>>>
isdkz 发表于 2023-2-16 19:49
把 a = [] * 10 换成 a = [ for i in range(10)]
a = [
好的 懂了 谢谢老师
页:
[1]