python-非数字型数据
一:列表操作方法
1:列表定义/查
列表使用符号:[ ]括起来/英文状态下的
列表中多个成员用逗号分割/英文状态下
列表中可以使用print(列表变量名[索引]的方式,访问指定的成员)
//注意:第一个成员的索引是0
不能访问不存在的列表编号
案例
#现有以下列表 list1 = ['关羽', '曹操', '刘备'] print(list1[0])#关羽 print(list[2])#刘备
2:列表-曾
insert:在指定位置添加指定的值
语法:列表名.insert(位置索引,"需要添加的值")
append:在最后添加值
语法:列表名.append(值)
extend:将一个列表中的值追加到另一个列表当中
语法:需要扩展的列表名.extend(移动的列表变量名)
案例
#insert list1 = ['刘备', '关羽', '张飞'] list1.insert(1, '吕布') print(list1) #append list2.append("张三") print(list2) #extend list2.extend(list1) print(list2)
3:改
#修改列表的值
语法:列表变量名.[索引]="值"
eg:修改list1中关羽为朱棣
list1.[0]="朱棣"
4:删
#del:删除指定索引的值
语法:del(列表名[需要删除成员的索引])
eg:删除关羽
del(list1[0])
#remove:删除指定的值
语法:列表名.remove("值")
eg:删除关羽
list1.remove("关羽")
#pop():删除列表中最后一个值
语法:列表名.pop()
eg:删除list1中最后一个值
list1.pop()
#pop(索引)删除指定索引的值与del相似
语法:列表变量名.pop(值索引)
#清空列表
语法:列表名.clear()
清空liest1
list1.clear()
5:统计相关成员的数量
#count()
语法:列表名.count("要统计的值")
6:返回指定值在列表中的索引编号
#index()
语法:列表名.index(指定的值,起始位置)
eg:返回张三在列表中的位置
list1.index("张三")#起始位置不写默认为0
7:排序
#sort():从小到大排序
语法:列表名.sort()
#sort(reverse=True):从大到小排序
语法:列表名.sort(reverse=True)
8:逆置
#reverse():把所有成员位置颠倒过来
语法:列表名.reverse()
eg:把list1的位置调换
liest1.reverse()
9:for遍历列表
#遍历列表 '''使用for遍历列表,列表中有几个成员,就循环几次''' list1 = ['张飞', '刘备', '关羽'] for n in list1: print(n) #案例2 '''需求:现有列表list2,使用for循环遍历计算列表中一共有多少数字''' list2=[0,3,3,9,10,3,5] sum=0 for n in list2: sum+=1#列表每循环一次,sum+1 print(sum) #案例3:计算以上列表相加之和 num1=0 for n in list2: num1+=n#与while循环计数相加一直,循环一次num1+n一次/num1是存储循环计数相加,n是循环次数 print(num1) #遍历列表中出现数据类型不统一 的解决办法 '''当一个列表中既有整数,又有字符串时,想要通过一条for代码实现遍历列表, 就需要把数据做一个强转 ''' #案例 sum1=0 list3 = [56, '32', 45, '6'] for n in list3: sum1+=int(n) print(sum1) #案例:判断列表中名字为三个字的有几个人 '''思路:定义一个变量,用于存放三个字名字的人数 使用for循环遍历列表 嵌套for循环,如果外循环循环一次二内循环需要循环三次那么给这个变量+1 最后输出这个变量''' list4 = ['张三', '李四', '刘老二', '王麻子', '王达成', '隔壁老王'] num2=0#这个变量用于存放名字数超过3各字的人数 for n in list4: sum2 = 0#这个变量用于循环计数, for x in n: sum2 +=1 if sum2==3:#如果在外循环一次中这个变量的值为3了 num2+=1#那么循环计数的变量就加1 print(num2)
10:拆包
拆包的意思:将列表拆开转为一个变量
语法:变量1,变量2,变量3=列表名
//注意:左边变量名要与右边列表中成员保持一直(有几个成员就有几个变量名)
list1 = ['关羽', '张飞', '刘备'] first,second,thind=linst1 print(first)#输出关羽
11:列表推导式
用于快速生成数量庞大的列表
语法:
列表名=[x for x in range(开始,结束,步长)]
列表名=[x for x in range(开始,结束,步长) if]
//主要还是依据range函数
#案例:使用列表推导式的两种方法生成一个0-100步长为10的列表 list1=[x for x in rang(0,101,10)] list2=[x for x in range(0,100)if x % 2==0]
12:公共方法
#len:返回非数字成员个数
语法:print(len(列表名))
//如果len里面放的时列表,返回列表成员个数
//如果里面放的时字符串,返回的时字符串中的字符个数
#max:返回列表中的最大值
语法:print(max(列表名))
//如果max里面放的时列表,返回列表最大值
//如果max里面放的时字符串,依据ASCII编码中最大的哪个字符
#min:返回最小值
语法:print(min(列表名))
//如果min里面放的时列表,返回列表最小值
//如果min里面放的时字符串,依据ASCII编码中最小的哪个字符
#in :判断指定的值是否存在
指定的值 in 列表
#not in 判断指定的值是否不存在
指定的值 not in 列表
案例:关于判断指定的是否存在 list3 = [4, 6, 1, 23]#判断4在不在列表中 fox 4 in list3: print("有") fox 22 not in list3: print("没有")
标签:python,list1,列表,语法,循环,print,list2,数字型 From: https://www.cnblogs.com/wh0915/p/16984140.html