• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

python4:列表、元组、字典

开发技术 开发技术 4小时前 2次浏览

1、列表

list = []
列表在内存存储中是不连续的,每个元素会记录自己下一个元素的位置来查找,所以列表元素是可以被修改的,通过索引修改
python4:列表、元组、字典
 
修改:list[索引] = XXX, list[索引:索引] = 通过删除再新增达到修改效果
删除:del list[索引],del list[索引:索引]
(单个数字无法进行迭代)
列表中如果只包含字符串,可以用join来拼接成字符串,如果既包含数字,又包含字符串,则无法使用join,应该使用遍历循环来处理
 

方法:

list1 = [1,2,3,4,”aa”]
append(str):追加,list1.append(“aaa”),只能追加单个元素,无需赋值,直接追加
copy():list1.cpoy()
clear():list1.clear()
count(str):list1.count(“aa”),计算元素出现的次数
extend():list1.extend(“”,“”),可追加多个元素,无需赋值,直接追加
append,extend对比:
aa = [1, 2, 'a']
bb = [1, 2, 'a']

bb.append(["aaa", "bbb"])
aa.extend(["aaa", "bbb"])
print(aa)
print(bb)
#输出结果:
#[1, 2, 'a', 'aaa', 'bbb']
#[1, 2, 'a', ['aaa', 'bbb']]

 

index(value,start,end):查找value在列表中的索引位置
insert(index,value):在索引位置中插入元素,list1.index(0,”aaa”)
pop(index):删除最后一个元素,并获取删除的值,可以添加参数索引删除
remove(value):删除指定的元素,只能删除一个,无法删除重复 的值,从左边起
reverse():反转顺序,从后往前排序
赋值后,原值发生改变,被赋值的变量也会发生改变,如果需要生成一个完全新的值,可以使用以下:
sort():排序,默认从大到小排序,如果反转需要添加参数reverse = True
 
import copy
aa = [1, 2, 'a']
bb = copy.deepcopy(aa)
aa.append("dasdad")
print(aa)
print(bb)

 

2、元组

tuple1 = (1,2,”a”,)
元组类似与列表,但是有很大的区别
元组不能被增删改
可索引,可切片,可迭代,可转换
元组的一级元素不能修改,如果一级元素中包含的二级元素是个列表,则可以增删改二级元素中的值
tuple1 = (11, "aaa", ["q", "ww"], True)
tuple1[2][0] = "Q"
print(tuple1)
#输出结果:
#(11, 'aaa', ['Q', 'ww'], True)
 

方法:

count(str):计算元素出现的次数
index(value,start,end):查找value在列表中的索引位置
 

3、字典

特点
键值对,key:value,dict
键:布尔值、列表、字典不能作为键,键如果有重复,只能保留一个
字典是无序的,不能切片
支持del删除 del dict1[key]

方法:

keys()、values(),可以通过遍历这两个值获取key和value,for key2 in keys(),for value1 in values()
items()遍历该字段,获取key,value,for key,value in items():
clear():
copy():
fromkeys:staticmethod静态方法,使用方法:类.方法,dict.fromkeys()
v = dict.fromkeys([“a”,”b”,”c”],”111″) print(v) #输出结果: #{‘a’: ‘111’, ‘b’: ‘111’, ‘c’: ‘111’}
v = dict.fromkeys(["a","b","c"],"111")
print(v)
#输出结果:
#{'a': '111', 'b': '111', 'c': '111'}

 

get(key,default=None):dic1.get(“a”,”AB”),通过key获取value,如果没有key,则不会像 dict1[key] 一样报错,默认返回None,也可自定义返回值
dict1 = {"a":"1","b":"2","c":"3"}
dica = dict1.get("v","AB")
print(dica)
#输出结果:
#AB

 

pop(key,defaut=None):删除并返回value,如果没有key,默认返回None,也可自定义返回值
popitem():随即删除一对,返回key,value
update(key:value):更新字典,如果存在则替换value,不存在则新增键值对
setdefault():设置一个值,如果不存在,则为传送的值,如果存在,则不改变任何,两种都返回现在的vaule
dict1 = {"a":"1","b":"2","c":"3"}
dica1 = dict1.setdefault("a","AB")
dica2 = dict1.setdefault("v","AB")
print(dict1,dica1)
print(dict1,dica2)
#输出结果
#{'a': '1', 'b': '2', 'c': '3'} 1
#{'a': '1', 'b': '2', 'c': '3', 'v': 'AB'} AB

 

  另:
    布尔值判断:
    以下都为False:
    0,None,””,{},[],()
    bool(0):False
    bool({}):False
    ……
 
 
 
 
 
 
 
 
 
 
 
 

程序员灯塔
转载请注明原文链接:python4:列表、元组、字典
喜欢 (0)