#一、列表 list
#中括号括起来 用,分割每个元素
#列表中的元素可以是数字 , 字符串 列表 布尔值
#1、索引取值
print(li[1]) #结果12
#2、切片,切片的结果也是
print(li[3:5])#结果['age', ['beautiful', 23, '390', [19, 10, '20'], 30]]
#列表元素,可以被修改
li = [1,12,3,'age',['beautiful',23,'390',[19,10,'20'],30],True]
print(li)
#删除 第一种方式
del li[1]
print(li)
#列表元素,可以被修改,通过索引和切片对元素进行修改
li[1:3] = [222,77]
print(li)
"""
灰魔法
1、列表格式
2、列表中所有元素都可以被修改
3、索引取值
4、切片,切片结果也是列表
5、for循环 while循环
6、可以通过索引的方式进行修改
7、删除 def
8、in 操作
li = [1,2,4,'age',['23',3,'yes'],'alex',True]
v = 2 in li
print(v)
列表转换为字符串的时候,必须自己写for循环一个一个处理:既有字符串又有数字
但列表中的元素只有字符串的时候,可以直接使用字符串join方法
"""
#1、追加,可以追加数字,字符串 ,列表
li.append(6666)
li.append("aldld")
li.append([12,33,"454"])
print(li)
#2、清空列表
# li.clear()
# print(li)
#3、拷贝 浅拷贝
# v = li.copy()
# print(v)
#4、计算元素出现的次数
vvv = li.count(222)
print(vvv)
#extend 扩展原来的列表,参数:可迭代对象
li.extend("yes")
print(li)
#index 根据值获取当前元素的索引位置(左边优先)
print(li.index(222))
#insert()在指定索引位置插入元素
li.insert(0,999)
#pop()删除某个值,并获取删除的值(指定索引或默认删除最后一个值)
#remove() 删除列表中的指定值,左边优先
v = li.pop()
print(li)
print(v)
v1 = li.remove(1)
print(li)
#reverse () 将当前列表进行反转
li.reverse()
print(li)
#sort() 列表的排序
ll = [11,44,33,666]
ll.sort(reverse = True) #当reverse为真时,为倒序
print(ll)
#列表是有序的,元素是可以被修改的
#二、元组,元素不可被修改,不能被增加或者删除
#一般写元组的时候,推荐在最后加入,
tu = (11,22,33,44)
print(tu[0])
#切片
print(tu[0:3])
#可以被for循环,可迭代对象
for item in tu :
print(item)
#转换 字符串可以转换为元组,列表可以转换为元组
#extend
print(tuple(ll))
print(list(tu))
#元组,有序
#元组的一级元素不可修改、增加 、删除
#count() 获取指定元素在元组中出现的次数
#index()
print(tu.index(33,0,4))
#三、字典 键 值 对 dict
# 字典的value可以是任意值
#列表 字典不能作为key值
#字典是无序的
info = {'k1':'v1', #键值对
'k2':'dd',
'k3':[11,22,333,{'kk1':99}]
}
print(info['k1'])
print(info['k3'][3]['kk1']) #99
del info['k3'][3]['kk1']
print(info)
for item in info:
print(item)
for item in info.keys():#循环获取字典中的key值
print(item)
for item in info.values(): #循环获取字典中的value值
print(item)
for k,v in info.items():
print(k,v)
########字典特有的功能 copy() clear()
#fromkeys()根据序列,创建字典,并指定统一的值
v2 = dict.fromkeys(['k1',123,'999'],123)
print(v2)
dic = {'k1':'djdk','k2':'djfkd','k3':'49'}
#根据key获取值,key不存在时,可以指定默认值(None)
v3 = dic.get('kkkk',9090)
print(v3)
#pop() popitem()
# v = dic.pop('k3')
# print(v)
# print(dic)
k,v = dic.popitem() #随机删除
print(dic,k,v)
#setdefault() 设置值,如果已经存在,不设置,获取当前key对应的值,如果不存在,则将键值添加到字典中去
dic.setdefault('k4','djfk')
print(dic)
#update()
dic.update({'k1':'yes'})
print(dic)
dic.update(k1='yeydh',k3=493,k6 ='beautiful')
print(dic)
输出结果
[1, 12, 3, 'age', ['beautiful', 23, '390', [19, 10, '20'], 30], True]
['age', ['beautiful', 23, '390', [19, 10, '20'], 30]]
[1, 3, 'age', ['beautiful', 23, '390', [19, 10, '20'], 30], True]
[1, 222, 77, ['beautiful', 23, '390', [19, 10, '20'], 30], True]
[1, 222, 77, ['beautiful', 23, '390', [19, 10, '20'], 30], True, 6666, 'aldld', [12, 33, '454']]
1
[1, 222, 77, ['beautiful', 23, '390', [19, 10, '20'], 30], True, 6666, 'aldld', [12, 33, '454'], 'y', 'e', 's']
1
[999, 1, 222, 77, ['beautiful', 23, '390', [19, 10, '20'], 30], True, 6666, 'aldld', [12, 33, '454'], 'y', 'e']
s
[999, 222, 77, ['beautiful', 23, '390', [19, 10, '20'], 30], True, 6666, 'aldld', [12, 33, '454'], 'y', 'e']
['e', 'y', [12, 33, '454'], 'aldld', 6666, True, ['beautiful', 23, '390', [19, 10, '20'], 30], 77, 222, 999]
[666, 44, 33, 11]
11
(11, 22, 33)
11
22
33
44
(666, 44, 33, 11)
[11, 22, 33, 44]
2
v1
99
{'k1': 'v1', 'k2': 'dd', 'k3': [11, 22, 333, {}]}
k1
k2
k3
k1
k2
k3
v1
dd
[11, 22, 333, {}]
k1 v1
k2 dd
k3 [11, 22, 333, {}]
{'k1': 123, 123: 123, '999': 123}
9090
{'k1': 'djdk', 'k2': 'djfkd'} k3 49
{'k1': 'djdk', 'k2': 'djfkd', 'k4': 'djfk'}
{'k1': 'yes', 'k2': 'djfkd', 'k4': 'djfk'}
{'k1': 'yeydh', 'k2': 'djfkd', 'k4': 'djfk', 'k3': 493, 'k6': 'beautiful'}