Python使用使用中括号 [ ] 来解析列表。列表是可变的(mutable)——可以改变列表的内容。
names_class2=['张三','李四','王五','赵六']
# print(names_class2[2])
# print(names_class2[0:3])
# print(names_class2[0:7])
# print(names_class2[-1])
# print(names_class2[2:3])
# print(names_class2[0:3:1])
# print(names_class2[3:0:-1])
# print(names_class2[:])
insert 方法用于将对象插入到列表中
append方法则用于在列表末尾追加新的对象
names_class2.append('alex')
names_class2.insert(2,'alvin')
print(names_class2)
names_class2=['张三','李四','王五','赵六']
names_class2[3]='赵七'
names_class2[0:2]=['wusir','alvin']
print(names_class2)
names_class2.remove('alex')
del names_class2[0]
del names_class2
names_class2.pop()#注意,pop是有一个返回值的
['to', 'be', 'or', 'not', 'to', 'be'].count('to')
x = [[1,2], 1, 1, [2, 1, [1, 2]]]
x.count(1)
x.count([1,2])
#extend 方法可以在列表的末尾一次性追加另一个序列中的多个值。
a = [1, 2, 3]
b = [4, 5, 6]
a.extend(b)
a
[1, 2, 3, 4, 5, 6]
#extend 方法修改了被扩展的列表,而原始的连接操作(+)则不然,它会返回一个全新的列表。
a = [1, 2, 3]
b = [4, 5, 6]
a.extend(b)
a
[1, 2, 3, 4, 5, 6]
a + b
[1, 2, 3, 4, 5, 6, 4, 5, 6]
a
[1, 2, 3, 4, 5, 6]
#index 方法用于从列表中找出某个值第一个匹配项的索引位置:
names_class2.index('李四')
#reverse 方法将列表中的元素反向存放。
names_class2.reverse()
print(names_class2)
#sort 方法用于在原位置对列表进行排序
x = [4, 6, 2, 1, 7, 9]
x.sort()#x.sort(reverse=True)
names_class1=['张三','李四','王五','赵六',[1,2,3]]
names_class1_copy=names_class1.copy()
names_class1[0]='zhangsan'
print(names_class1)
print(names_class1_copy)
############
names_class1[4][2]=5
print(names_class1)
print(names_class1_copy)
#从这一点我们可以断定,这两个变量并不是完全独立的
#不可变数据类型:数字,字符串,元组 可变类型:列表,字典
# l=[2,2,3]
# print(id(l))
# l[0]=5
# print(id(l)) # 当你对可变类型进行修改时,比如这个列表对象l,它的内存地址不会变化,注意是这个列表对象l,不是它里面的元素
#
# s='alex'
# print(id(s)) #像字符串,列表,数字这些不可变数据类型,,是不能修改的,比如我想要一个'Alex'的字符串,只能重新创建一个'Alex'的对象,然后让指针指向这个新对象
#
# s[0]='e' #报错
# print(id(s))
#重点:浅拷贝
a=[[1,2],3,4]
b=a[:]#b=a.copy()
print(a,b)
print(id(a),id(b))
print('*************')
print('a[0]:',id(a[0]),'b[0]:',id(b[0]))
print('a[0][0]:',id(a[0][0]),'b[0][0]:',id(b[0][0]))
print('a[0][1]:',id(a[0][1]),'b[0][1]:',id(b[0][1]))
print('a[1]:',id(a[1]),'b[1]:',id(b[1]))
print('a[2]:',id(a[2]),'b[2]:',id(b[2]))
print('___________________________________________')
b[0][0]=8
print(a,b)
print(id(a),id(b))
print('*************')
print('a[0]:',id(a[0]),'b[0]:',id(b[0]))
print('a[0][0]:',id(a[0][0]),'b[0][0]:',id(b[0][0]))
print('a[0][1]:',id(a[0][1]),'b[0][1]:',id(b[0][1]))
print('a[1]:',id(a[1]),'b[1]:',id(b[1]))
print('a[2]:',id(a[2]),'b[2]:',id(b[2]))<BR><BR><BR>#outcome