Python遇到的坑,你有遇到吗?
本帖最后由 Stubborn 于 2020-6-12 22:46 编辑首先让我们看,很简单的代码。确认看懂,或者已经懂了,移至下面测验。答对有奖。
string = "ein"
names = []
names.append(string)
string1 = string
names1 = names
我们可以把它联想成这样的场景:
1。我们一个叫string的变量指向,贴在,纸片上,反正我们的string变量,已经和纸片联系上了,它表示一个str类,值是ein。
2。同样我们一个叫names的变量指向纸盒,已经和纸片关联上,它表示一个list类,没有值,是一个空对象。
3。我们向names添加了一个值,
4。我们把string的值赋给了string1,实际上,也是 string1指向纸片,和纸片进行关联
5。同理,names1也是一样。
然后继续运行
>>>...
string = "stu"
names1.append(string)
names = []
names.append(string)
1。我们对string重新赋值,这个赋值是一个全新的值。所有有了一个新的 ‘纸片’
2。我们向names1的纸盒中,添加一个值,“stu”
3。我们对names重新赋值,注意注意,在赋值前,names和names同时指向的一个位置,也就是说,对names1进行添加值,是会影响到names的。
4。我们向names添加一个值“stu”
以下,全部是目测题,请在不上机情况下,回答打印结果
第一题
def cre():
return
print(cre()(2))
第二题
def fun(val=[]):
val.append(2)
return val
fun()
fun(val=[])
print(fun())
第三题
lista = [[]] * 10
lista.append(10)
print(lista[-1])
第四题
a = 5
b = a
c = b
a += 1
b += 1
print(c)
水帖 Python_Aaron 发表于 2020-6-12 18:25
水帖
不水啊{:10_272:} @-@ 好乱啊(新手)
页:
[1]