List基本用法:
#list 是用“[]”定义 用“,”隔开
例子:
#stu_name='海龙','杨帆','刘荣心','......'
#定义一个名为stu_name的list
stu_name= ['海龙','杨帆','刘荣心','......']#print(stu_name[0])#查询list中第一个元素#输出结果:海龙
list-增删改查-增:
stu_name= ['海龙','杨帆','刘荣心','......']
stu_name.append('小月月')#在list的末尾添加一个元素
print(stu_name)#输出结果:['海龙', '杨帆', '刘荣心', '......', '小月月']
stu_name= ['海龙','杨帆','刘荣心','......']
stu_name.insert(0,'小甜心')#在指定位置(下标)添加一个元素
stu_name.insert(0,'小甜心')#第二次执行如果位置是相同的,上次增加的元素位置后移
print(stu_name)#输出结果:['小甜心', '小甜心', '海龙', '杨帆', '刘荣心', '......']
list-增删改查-改(只有一种修改的方法):
stu_name= ['海龙','杨帆','刘荣心','......']#下标为0、1、2、3
stu_name[2]='小红'#修改下标2的元素,将刘荣心,修改为小红。
print(stu_name)#输出结果:['海龙', '杨帆', '小红', '......']
list-增删改查--删:
#.pop方法:传下标删除元素(用法比较单一,只能删除list的元素)
stu_name= ['海龙','杨帆','刘荣心','......']
stu_name.pop()#删除最后一个元素,如果不输入下标值,默认删除最后一个元素。
stu_name.pop(1)#指定角标,删除指定的元素。指定下标1的内容,删除’杨帆‘;填-1是删除最后一个下标的内容。如从后向前删的话可以用“-”
print(stu_name)
#输出结果:['海龙', '刘荣心']
#.remove方法:传元素删元素
stu_name= ['海龙','杨帆','刘荣心','......']
stu_name.remove('刘荣心')#----如果有重名的,只能删除查到到的第一个元素,且remove不能同时删除多个元素
print(stu_name)#输出结果:['海龙', '杨帆', '......']
#del方法:通过下标删元素(del删除面向对象比较多,如函数、字典等)
stu_name= ['海龙','杨帆','刘荣心','......']del stu_name[2] #删除下标2内的元素“刘荣心”
print(stu_name)
#输出结果:['海龙','杨帆','......']
List增删改查-查:
stu_name= ['海龙','海龙','杨帆','刘荣心','小芳']print(stu_name[-1])#通过角标查询list里的元素,最后一位#输出结果:小芳
print(stu_name[0])#通过角标查询list里的元素,第一位#输出结果:海龙
print(stu_name.count('海龙'))#查询同一个元素在list出现的次数#输出结果:2
print(len(stu_name))#查询stu_name的长度#输出结果:5
print(stu_name.index("刘荣心"))#查找元素的角标#输出结果:3
print(stu_name.reverse())#reverses是反转list,正序变成倒叙,但不输出结果
print(stu_name)#输出结果:['小芳', '刘荣心', '杨帆', '海龙', '海龙']
stu_name.clear()#clear清空list元素
print(stu_name)#输出结果:[]
List排序:
stu_name=['海龙','海龙','杨帆','刘荣心','小芳']
stu_num=[2,3,6,1,4,5,6,7,8,0]
stu_num.sort()#按照正序排列元素,如果list内存在str和int类型的组合,无法进行排序。
print(stu_num)#输出结果:[0, 1, 2, 3, 4, 5, 6, 6, 7, 8]
stu_num.sort(reverse=True)#加reverse=True,就是倒叙排列,注意true,T一定要大写。
print(stu_num)#输出结果:[8, 7, 6, 6, 5, 4, 3, 2, 1, 0]
List关联合并:
#List关联合并
stu_name=['海龙','海龙','杨帆','刘荣心','小芳']
stu_num=[2,3,6,1,4,5,6,7,8,0]
new_lis=stu_name+stu_num#可以合并list,但是生成了一个新的list
print(new_lis)#输出结果:['海龙', '海龙', '杨帆', '刘荣心', '小芳', 8, 7, 6, 6, 5, 4, 3, 2, 1, 0]
stu_name.extend(stu_num)#关联多个list,可以吧把其他的list下的元素加入到当前的list下
print(stu_name)#输出结果:['海龙', '海龙', '杨帆', '刘荣心', '小芳', 8, 7, 6, 6, 5, 4, 3, 2, 1, 0]
print(stu_name*2) #输出的list元素,可以进行+-*/#输出结果:['海龙', '海龙', '杨帆', '刘荣心', '小芳', 2, 3, 6, 1, 4, 5, 6, 7, 8, 0, '海龙', '海龙', '杨帆', '刘荣心', '小芳', 2, 3, 6, 1, 4, 5, 6, 7, 8, 0]
List循环:
passwd=['111111','222222','333333']for s in passwd:#for循环,直接循环list,循环的时候每次都取list里的元
print('每次循环的值:',s)#输出结果:每次循环的值:111111 \n 每次循环的值:222222 \n 每次循环的值:333333
List赋值:
passwd=['111111','222222','333333']
ix=0for s inpasswd:
passwd[ix]='abc_'+s #输出时每次都在前面赋值abc_
ix+=1#每次下标都加1
print(passwd)#输出结果:['abc_111111', 'abc_222222', 'abc_333333']
List多维数组:
nums=[1,2,3,4,5,6,['a','b','c','d',['一','二']]]#存在几个[]的组合就是几维数组,本次演示的nums是三维数组
print(nums[6][4][1])#输出结果:二
#list基本应用,查询手机换号是否存在。
iphone = ['151', '138', '159']for counter in range(5):
ip= input("手机号码:")if ip iniphone:print("手机号已存在")continue
else:print("手机号未注册")continue
List切片操作:
## #就是list取值的一种方式
L =list(range(1,11))#list是1~10,顾头不顾尾的,不会取尾的数字,如果要去对应的值要+1
print(L)
#输出结果:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]print(L[2:8])#取下标是2`8的#输出结果:[3, 4, 5, 6, 7, 8]
print(L[:5])#也可以用[0:5]取值,如果最前面没写的话 代表是从下标0开始取得#输出结果:[1, 2, 3, 4, 5]
print(L[4:])#也可以用[4:10]取值,如果最后没写的话 代表是从4取到最后#输出结果:[5, 6, 7, 8, 9, 10]
print(L[:])#如果冒号前后都没有的话,就是全取#输出结果:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(L[::2])#取角标范围为0~10,且隔2个取一次。但是这个数包含自己。
#输出结果:[1, 3, 5, 7, 9]print (L[1::2])#取角标范围为1~10,隔2个取一次,取偶数#输出结果:[2, 4, 6, 8, 10]
print(L[::2] )#取角标范围为0~10,隔2个取一次,取奇数#输出结果:[1, 3, 5, 7, 9]
print(L[::-2])#取奇数从后往前取,如果是最后步上是正数,就从前往后取,如果最后面的步长是负数的,那么久从右往左取#输出结果:[10, 8, 6, 4, 2]#-----------切换同样适用于字符串----------
words='中秋节还要上课'
for c,b in enumerate (words):#C属于一个元组类型,B属于一个str类型。
print('每次打印的',c,b)#输出结果:每次打印的 0 中\n每次打印的 1 秋\n每次打印的 2 节...每次打印的 6 课
print(words[::-1])##字符串反转#输出结果:课上要还节秋中
回文例子:
s='上海自来水来自海上'#回文算法,翻过来倒过去都一样
s =input('请输入一个字符串:')if len(s)<2:#一个回文字符串肯定是大于等于2的。
print('字符串长高度必须大于1')elif s==s[::-1]:#正文和回文输出内容相同的
print('是回文')else:print('不是回文')
元组基本用法:
mysql=('12123412','36','root')#用[]就是list 用()就是元组,元组也是一个列表,元组不能修改
print(mysql[0:2])#输出元组0,1的元素
for m inmysql:print(m)#输出结果:12123412 \n 36 \n root
l =[1]
t=('abc',)#定义元组的时候如果仅有一个元素的时候需要在后“,”才变成元组类型
print(type(t))#输出结果:#元组
print(type(l))##输出结果:#list