0基础学python(十二) |
|
P2P
L3
• 2020-11-14 • 回复 0 • 只看楼主
• 举报
|
讲一下容易出错的点
for 循环进行遍历时,尽量不要对遍历的对象进行修改,尤其是删除
a= [1,2,3,4,5,6,7]
for i in a :
if i == 2 or i == 3:
a.remove(i)
print(a)
比如上面的输出的结果是[1,3,4,5,6,7],我们想的是删除2和3,但是它只删除了2
大家都排过队吧,就像上学那会食堂排队一样,你前面的人等的不耐烦了不排了走了,那你是不是会往前走,一样的道理,当你把2删了,3就往前走了,理论上它已经遍历了第二个元素所以3就不会被删除了
a= [1,2,3,4,5,6,7]
b =[]
for i in a:
if i == 3 or i ==4:
b.append(i)
for i in b:
a.remove(i)
print(a)
解决方法如上
然后再讲一下地址
a = 100以这个为例,电脑是先开辟一片内存,然后把100放到那片内存,让a指向那边内存,形象一点说,今天单位来了一个美女,大长腿,36D??这些就相当于数据,而你的脑子里会对这个人有个印象这就相当于内存,后来你从同事口中得知这个美女叫小美,然后你的脑子就把小美和美女的特点对应起来了,这就相当于指向
a = [1]
b = a
a.append(2)
print(b)
因为a和b指向的是同一个地址,所以对列表增加元素时,b也会增加
函数和类同样如此,函数和类的内容扔进内存里,让函数名或类名指向那片地址
下次讲一下网页基础内容然后讲爬虫