列表:

定义:由一系列变量组成可变序列容器。

属性:

1、填加元素,列表.append()方法,在末尾追加。

用法:列表.append(内容)

列表.insert()插入方法。

用法:列表.insert(位置,内容)

2、删除元素

根据元素删除,列表.remove(内容)

椐据索引删除,del 列表变量[索引值]

列表.reverse()反向列表元素

注:通过切片删除或追加元素不会产生新列表

如果通过切片取出元素就会生成新列表

3、复制列表

list.copy()

'''

4、#创建列表

#空列表

list_01=[]

list_01=list()

#有内容的列表

list_02=["我是中国人",100,True]

list_02=list("我是中国人")#list()赋值()里面是另一个容器。字符串为容器。

5、#获取元素:

#1、索引

print(list_02[3])

#2、切片

print(list_02[0:3])

#3、填加元素,append属性,在末尾追加。

list_02.append("天津")

print(list_02)

#4、insert插入属性。insert(位置,内容)

list_02.insert(2,"宁河")#在第2个位置后面追加

print(list_02)

#4、删除元素

#根据元素删除,remove(内容)

list_02.remove("宁河")

#根据位置删除

del list_02[1]#删除第2个元素。

print(list_02)

#可以用切片删除几个元素。

del list_02[0:3]#删除前三个元素

print(list_02)

#5、定位元素,可以增、删、改、查

list03=list("天津市宁河区史家庄小学")

#切片

del list03[0:3]#删除

print(list03)

list03[0:3]=["东","棘","坨"]#修改元素

print(list03)

list03[0:3]=[1,2,3,4,5,6]#元素多于切片数自动追加。

print(list03)

list03[0:6]=[]#参数为空等同于删除。

print(list03)

6、#便历列表

list04=list("天津市宁河区东棘坨镇史家庄小学")

for stra in list04:

print(stra)

# #for stra in list04[::-1]:#不建议使用,此功能是重新建立新列表

# print(stra)

# #for stra in list04[2:5]:#不建议使用,此功能是重新建立新列表

# print(stra)

list05=list("学习好劳动好")

for index in range(1,len(list05)):#正序取值

print(list05[index])

for index in range(-1,-len(list05),-1):#倒序取值

print(list05[index])

#列表元素返输出可以先反向列表元素

List05.lreverse() #反向列表元素

for index in range(len(list05)):#倒序取值

print(list05[index])

7、#练习:

# 控制台中输入学生成绩,当输入入为100时插到第一个位置,当输入为空时打印学生成绩,并打印最大值,最小值和平均数。

list_socer=[]

while True:

chengji = input("输入成绩:")

if chengji=="":

break

fchji = float(chengji)

if fchji==100:

list_socer.insert(0,100)

else:

list_socer.append(fchji)

for iemt in range(len(list_socer)):

print(list_socer[iemt])

print("\n"*2+"最大数是:"+str(max(list_socer)))

print("最小数是:%0.2f"%(min(list_socer)))

print("平均数是:%0.2f"%(sum(list_socer)/len(list_socer)))

8、#练习:

#输入学生姓名当此学生存在,则不在加入列表中,当输入为空是退出并打印。

liststr=[]

while True:

ximi=input("输入学生姓名:")

if ximi=="":

break

if ximi in liststr:

print("姓名已存在")

continue

else:

liststr.append(ximi)

liststr.reverse()#反向列表

for imte in range(len(liststr)):

print(liststr[imte])

'''

浅拷贝:只复制一层变量,不会复制深层变量的绑定。

深拷贝:复制整个依懒的变量。

'''

#浅考贝:原列表发生变化会改变拷贝出来的列表。

list01=[100,[200,600]]

list02=list01[:]#浅拷贝

print(list02)

list02=list01.copy()#浅拷贝

list01[1][0]=900#第二个元素的第一个值,(0是第一个,1是第二个)

print(list02[1][0])

#深拷贝(浪费内存)原来列表发生变化不会影响现在的列表,它们是完全隔离的。

import copy

list01=[100,[200,600]]

list02=copy.deepcopy(list01)#深拷贝

list01[1][0]=900#不会影响拷贝出来的列表值。

print(list02[1][0])

输出为:

原列表:[100, [200, 600]]

浅拷贝结果:900

深拷贝结果:200

#练习:求最大值

list00=[]

while True:

incom=input("输入整数:")

if incom=="":

break

list00.append(int(incom))

number=list00[0]

for imte in range(1,len(list00)):

if number <list00[imte]:

number=list00[imte]

print(number)

#练习:输入列表,如果大于10,则删除。

list002=[]

while True:

shuru=input("请输入整数:")

if shuru=="":

break

list002.append(int(shuru))

# for imt in range(len(list002)-1):

# if list002[imt]>=10:

# del list002[imt]

for imt in list002:

if imt>=10:

list002.remove(imt)

print(list002)

#练习:用单价和数量求总价。

list1=[1.2,3.6,4.5,45]

list2=[12,21,36,45]

list002=[list1,list2]

print(list002)

for imt in range(4):

print(list002[0][imt]*list002[1][imt])

加客服微信:qiushu0517,开通VIP下载权限!