列表 元组 字典
Posted zkpythonstudy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了列表 元组 字典相关的知识,希望对你有一定的参考价值。
数据类型:列表,元组和字典。
list类 列表
#1 list类的格式:li=[1,45,‘adf‘,[‘safe‘,1,True],(11,‘asdf‘,),{‘name‘:‘fdf‘,‘age‘:432,}]
#2 列表中可以放置任何类型;
中括号括起来
, 分割每个元素
列表中的元素可以是数字、字符串、布尔值、列表、元组、字典。。。。所有的都能放进去
#3 索引取值 print(li[3])
#4 切片取值,切片结果也是列表 print(li[3:-1])
#5 for循环 for item in li:
while循环 print(item)
#6 列表元素可以被修改
索引修改元素 li[1]=120 li[1]=[12,34,56]
切片修改 li[1:3]=[49,34]
#7 删除元素 del li[1] del li[1:3]
#8 in 操作 v = 1 in li print(v)
列表的魔法
def append(self,p_object) 在列表原来元素最后追加 例如:li.append(5) li.append(‘alex‘) li.append([1234,2323])
def clear(self) 清除li中的元素
def copy(self) 拷贝,是浅拷贝。深拷贝以后讲解
def count(self,value) 计算元素出现的次数
def extend(self,iterable) iterable是集合、可迭代对象的意思。参数是可迭代对象
def index(self,value,start=None,stop=None)根据参数返回索引,找到第一个就返回,不再继续,最左优先
def insert(self,index,p_object) 指定索引位置插入
def pop(self,index=None) 根据索引删除一个值,并可获取删除的值,默认删除最后一个
def remove(self,value) 删除表中指定的的元素,左边优先
def reverse(self) 将当前列表进行反转
def sort(self,key=None,reverse=False) 列表排序 reverse=False 是从小到大排序,同时也是默认排序。reverse=True是从大到小排序。老师欠了cmp 和 key 这两个以后讲
元组
元组就是对列表的加工,元素不可被修改,不能被增加或删除,老师建议:写元组的时候,推荐最后加入,
tu=(111,‘alex‘,(11,33),[(33,44)],True,33,44,)
可以索引取值,也可以切片取值
可以被for循环:是可迭代对象。
for item in tu
print(item)
字符串、列表、元组可以相互转换
a = ‘asdfasdf‘ li = [‘asdf‘,123] tu = (123,123,‘asd‘) v = tuple(s) 字符串转为元组 v = tuple(li) 列表转为元组
v= list(tu) 元组转换为列表
元组的元素不可修改:是一级元素不可修改 ;元组中列表的元素可以修改;元组中列表元组的元素也不可修改
元组是有序的
元组的灰魔法
tu.counts(value) 获取指定元素在元组中出现的次数
tu.index(value) 获取指定元素的索引
字典 dict类
字典的基本结构 info={‘k1‘:‘v1‘,‘k2‘;‘v2‘} ‘key‘:‘value‘称为一个键值对 字典的value可以是任何数值类型
info={‘k1’:‘v1’,
‘k2‘:‘v2‘,
‘k3‘:[11,[],(),22,33,{‘kk1‘:‘vv1‘,‘kk2‘:‘vv2‘,‘kk3‘:(55,66),}] ,
‘k4‘:(11,22,33,44) }
数值、字符串、布尔值、元组可以作为字典的key 列表、字典不能作为字典的key
字典是无序的,不能切片
如果取值的话,根据自己定义的key来寻找,例如 v=info[‘k1‘]
del info[‘k1‘] 字典支持删除元素
while对字典无效
for item in info:
print(item) for对字典循环默认输出所有的key
for item in info.keys():
print(item)
for item in info.values(): for对字典循环默认输出所有的value
print(item)
for item in info.keys():
print(item,info[item]) 输出key value
for k,v in info.items():
print(k,v)
元组的灰魔法:
def clear(self) 清空
def copy(self) 拷贝,浅拷贝
def fromkeys(*args,**kwargs) 根据序列创建字典,并指定统一的值。v=dict.fromkeys([‘k1‘,123,‘999‘],123)
def ger(self,k,d=None) 根据key取值,key不存在时,可以指定返回值,默认返回None
def items(self)
def keys(self)
def pop(self,k,d=None) 移除指定的键值对
def popitem(self) 随机删除一个键值对
def selfdefault(self,k,d=None) 设置值,如果已存在,不设置,获取当前key对应的值
def update(self,E=None,**F)
dic={‘k1‘:‘v1‘,‘k2‘:‘v2‘} dic.update({‘k1‘:‘1111‘,‘k3‘:123})
还支持以下写法 dic.update(k1=123,k3=345,k5=‘asdf‘)
字典中常用的魔法keys() values() items() get() update()
以上是关于列表 元组 字典的主要内容,如果未能解决你的问题,请参考以下文章