数据的基本类型:1.列表(增、删、改、查、其他操作;嵌套)2.元组(嵌套)3.range的语法
1.列表:列表用[]表示,列表里的元素用,逗号隔开,可存放各种数据类型;列表是可改变的。
.1列表的索引和切片
索引:
lst = ['一天','两天','三天','四天']
print(lst[0]) # ['一天']
print(lat[1]) # ['两天']
切片:
lst = ['一天','两天','三天','四天']
print(lst[0:2]) # ['一天','两天',]
print(lat[-1:-2]) # ['四天','三天']
print(lst[0:2:-1]) # ['两天','一天']
1.2列表的增删改查
增:append; insert; extend
lst = [1,2,3,"电脑","键盘"]
lst.append("鼠标") # 追加,默认从最后追加
print(lst)
# [1,2,3,"电脑","键盘",'鼠标',]
lst = ["一天","两天","三天"]
lst.insert(2,"四天") # 插入,可用索引指定位置
print(lst)
# ["一天","两天",'四天',"三天"]
lst = ["我的","你的","他的"]
lst.extend(["不是你的",'不是她的']) # 迭代添加
print(lst)
# ["我的","你的","他的","不是你的",'不是她的']
删:pop; remove; clear;det
lst = ["中国","美国",'德国','英国']
lst.pop(2) # 默认删除最后一个,可制定索引删除
print(lst)
# ["中国","美国",'英国']
lst.remove('美国') #制定元素
print(lst)
# ["中国",'德国','英国']
lst.clear() #默认清空,
print(lst)
# []
del lst[:2] # 切片删除
print(lst)
# ['德国','英国',]
改:利用索引和切片修改
索引 lst = ["中国","美国",'德国','英国']
lst[1] = '大佬'
print(lst)
# ["中国","大佬",'德国','英国']
切片 lst = ["中国","美国",'德国','英国'] # 用切片修改,所该内容必须也是切片
lst[1:3:1] = [,'大佬','德国啤酒'] # 解释:从1到3,每一个替换一个;可替换值数量=替换值的数量。
print(lst)
# ["中国","大佬",'德国啤酒','英国']
lst = ["中国","美国",'德国','英国']
lst[1:3:1] = ['大佬','德国啤酒','纽约','美国大兵'] # 解释:如果步长没有或者是1,则不用关心替换数量。
print(lst)
# ["中国",'大佬','德国啤酒','纽约','美国大兵','英国']
查:列表是一个可迭代对象,可进行for循环。
for el in lst:
print(lst)
其他操作:
lst = ["中国","美国","中国",'德国','英国'"中国","中国"]
c = lst.count('中国') # 可进行查询
print(c)
# 4
lst = [1,2,3,,6,5,4]
lst.sort() # 排序,默认升序。(对数字效果明显)
print(lst)
# [1,2,3,4,5,6,]
lst = [1,2,3,,6,5,4]
lst.sort(reverst=Ture) # 降序 (reverst=Ture):参数
print(lst)
# [6,5,4,3,2,1,]
lst = [1,2,3,,6,5,4]
lst.revesrt() #翻转
print()
# [4,5,6,3,2,1,]
lst = [1,2,3,,6,5,4]
l = len(lst) # 列表长度
print(l)
# 6
1.3列表的嵌套
lst = ['山西','山东','河北',['石家庄','唐山','张家口',['赤城','崇礼','承德']]]
# 找到河北
lst[2]
# 找到张家口
lst[3][2]
# 找到赤城
lst[3][2][0]
# 把崇礼换成雄县
lst[3][2][1] = lst[3][2][1].replace('崇礼','雄县')
2.元组和元组嵌套: 俗称不可变的列表.又被成为只读列表, 用小括号()括起来以逗号(,)隔开,
可以放任何数据类型的数据,可以查询、循环、切片, 但就是不能改.
tu = ('石家庄','唐山','张家口',)
print(tu[0]) # 索引
# ('石家庄')
print(tu[0:2]) # 切片
# ('石家庄','唐山')
for el in tu: # for循环遍历元组
print(el)
# 石家庄
唐山
张家口
tu = ('石家庄','唐山','张家口',['赤城','崇礼','承德'])
# 第一层元组不可改变
tu[4].append('沙城')
print(tu)
# ('石家庄','唐山','张家口',['赤城','崇礼','承德','沙城'])
# 第二层可改变但要根据第二层的数据类型来判断是否可变。
其他表示方法:
中有一个元素的元组:(1,)
空元组:type()
3. rang:range可以帮我们获取到⼀组数据. 通过for循环能够获取到这些数据.
for num in range(5): # 从0-5(不包括5)
print(num)
# 1
2
3
4
for num in range(1,6,2): # 从1-5(不包括5)每两个取一个;步长为负值反向取。
print(num)
# 1
3
5