day12,列表.元组.字典


列表:

1.列表的基本格式:

中括号括起来,

用” , “分隔每个元素,

2.列表中可以嵌套任何类型:

列表中地元素可以是,字母,数字,字符串,列表,任何东西都能放进去.

取值

list=[1,12,9,"age","史正文",["19",10],“庞麦郎”,"elex",True]
#3.索引取值:

list1 = list[3]

#4.切片取值:

list2=list[3:5]

5.

   可以使用for循环:

   可以使用while循环:

6.通过索引修改和删除:

list=[1,12,9,"age","史正文",["19",10],“庞麦郎”,"elex",True]

list[1] = 120def list[3]

 

7.通过切片修改和删除:

list=[1,12,9,"age","史正文",["19",10],“庞麦郎”,"elex",True]

list[1:3]=["55","66"]

del list[3:5]

8.可以进行in操作:

 

list=[1,12,9,"age",["史正文","19",10],"庞麦郎","elex",True]

v1="age" in list
print(v1)#====>#结果是True

v2="史正文" in list
print(v2) #====>结果是False

v3="史正文" in list[4]
print(v3)#====>结果是True

 

9.嵌套索引取值:

list=[1,12,9,"age",["史正文","19",10],"庞麦郎","elex",True]
v1=list[4[0]]

10.字符串转列表:

s = "fjtfjtfjdjdjdjfty" #内部使用for循环

l = list(s)

11.列表转字符串:

# a)当列表中既有数字又有字符串时:
# 只能自己写for循环,一个一个添加进去

l = [11,22,33,"44","55"]
s=""
for i in l :
    s += str( i )
print( s )
#  当列表中只含有字符串时
#  就可以使用字符串的join方法 
l = ["77","88","99"]

s = "".join(l)

print(s)

列表的灰魔法(list类中提供的方法):

专业说法:   li对象调用append方法

1.追加 — li .append()

li .append(55)

li .append("66")

li .append(["77","88"])

 

2.清空 -- li.clear()
li = [11,22,33,44]

li .clear()

print(li)

3.拷贝  — li.copy()

li = [11,22,33,44]

new_li = li.copy()

print(new_li)

4.计算元素出现的次数: — li.cuont()

li = [11,22,33,44,22]

new_li = li.count(22)

print(new_li)

5.扩展原列表 ,需要参数:可迭代对象 — li.extend()

 

li = [11,22,33,44,22]

li.extend([9988,"不得了"])

print(li)
输出===>[11, 22, 33, 44, 22, 9988, '不得了']

li.extend("不得了")

print(li)
输出===>[11, 22, 33, 44, 22, '不', '得', '了']

 

6.根据值获取当前值的索引位置 (从左向右) — li.index()

li = [11,22,33,44,22]

v = li.index(33)

print(v)

7.在指定位置插入元素:需要指定位置 — li .insert()

li = [11,22,33,44,22]

li.insert(0,99)

print(li)

输出===>[99, 11, 22, 33, 44, 22]

8.删除列表中的某一个元素,(可以指定索引,默认是最后一个),并获取该元素 –li.pop()

#默认:
li = [11,22,33,44,22]

v = li . pop()

print(v)

输出===>22

#指定索引:
li = [11,22,33,44,22]

v = li . pop(2)

print(v)
输出===>33

9.删除列表中的指定值,从左向右.–li.remove()

li = [11,22,33,44,22]

li . remove(33)

print(li)

输出 ===>[11, 22, 44, 22]

10.将当前列表进行反转:– li.reverse()

li = [11,22,33,44,22]

li . reverse()

print(li)

输出 ===>[22, 44, 33, 22, 11]

11.列表的排序.–li.sort()

li = [11,22,33,44,22]

li . sort()

print(li)

输出===>[11, 22, 22, 33, 44]

 元组–tuple

1.

a).元组是用()表示,用,分隔.

b).元组特别要注意的地方,当创建只有一个元素的元组时,后边要加” , “

c).元组的元素不能修改,不能删除,不能新增.

d).元组是有序的.

2.元组可以进行索引操作.

 

tu = (111,"elex",(11,22,),[(33,44,)],True,33,44)

v = tu[1]

print(v)

输出===>elex

 

 

 

3.元组可以进行切片操作.

 

tu = (111,"elex",(11,22,),[(33,44,)],True,33,44)

v = tu[1:3]

print(v)

输出===>('elex', (11, 22))

 

 

 

4.元组可以for循环,元组是可迭代对象 

5.可以进行转换:

 

#转换为字符串:
tu = (111,"elex",(11,22,),[(33,44,)],True,33,44)

s = str(tu)

print(s)

输出===>(111, 'elex', (11, 22), [(33, 44)], True, 33, 44)

 

6.元组里嵌套的元素可以进行修改,删除和新增.

tu = (111,"elex",(11,22,),[(33,44,)],True,33,44)

tu[3][0] = "555"

print(tu)

输出===>(111, 'elex', (11, 22), ['555'], True, 33, 44)

tuple类提供的方法 :

1.count()   获取指定元素在元组中出现的次数.

2.index()  获取指定元素的索引.

字典:dict

1.使用{}表示,{key:value,key1:value1}

2.字典的valie可以进行嵌套,可以是任何值

3.字典的key,必须是不可变的,不能是列表list,字典dict

4.字典是无序的

5.通过索引来 获取key对应的值:

info={
    "k1":18,
    "k2":True,
    "k3":[
        11,
        [],
        (),
        22,
        33,
        {
            'kk1':'vv1',
            'kk2':'vv2',
            'kk3':(11,22,)
        }
    ],"k4":(11,22,33,44)
}
#取kk3  kye对应值里的11
v=info["k3"][5]["kk3"][0]
print(v)

6.删除字典中的值:

info={
    "k1":18,
    "k2":True,
    "k3":[
        11,
        [],
        (),
        22,
        33,
        {
            'kk1':'vv1',
            'kk2':'vv2',
            'kk3':(11,22,)
        }
    ],"k4":(11,22,33,44)
}
#删除"k1"
del info["k1"]
print(info)

输出===>{'k2': True, 'k3': [11, [], (), 22, 33, {'kk1': 'vv1', 'kk2': 'vv2', 'kk3': (11, 22)}], 'k4': (11, 22, 33, 44)}

#删除'kk1'
del info["k3"][5]['kk1']
print(info)

输出===>{'k2': True, 'k3': [11, [], (), 22, 33, {'kk2': 'vv2', 'kk3': (11, 22)}], 'k4': (11, 22, 33, 44)}

7.for循环:

info={
    "k1":18,
    "k2":True,
    "k3":[
        11,
        [],
        (),
        22,
        33,
        {
            'kk1':'vv1',
            'kk2':'vv2',
            'kk3':(11,22,)
        }
    ],"k4":(11,22,33,44)
}

#获取字典里所有的kye:
for item in info:
    print(item)
#获取字典里所有value:
for item1 in info.values():
    print(item1)
#第一种获取字典里所有key和value:
for item2 in info:
    print(item2,info[item2])
#第二种获取字典里所有的key和value:
for k,v in info.items():
    print(k,v)

  dict提供的方法

1.clear()

2.copy()

3.:dict.fromkeys() 根据序列创建字典,并指定统一的值

v = dict.fromkeys([123,"aaa",456],789)
print(v)
#指定的参数里前面做为字典的key,后面做为所有key统一的值

4.get() 根据key获取对应的值,当key不存在时不会报错,并获取到None,

dic={
    "k1":
        "vvvvv"
}
v = dic.get("k1")
print(v)   #输出===>vvvv

#当key存在时,直接获取到对应的值
v1 = dic.get("kkkkk")
print(v1)   #输出===>None

当key不存在时并且没有指定参数,会获取到None

v2 = dic.get("ssss","bbbb")
print(v2)    输出===>bbbb

当key不存在时,指定了参数的值,会获取到指定的值的参数

5.pop() 指定字典中某一个key进行删除,并获取到对应的value

 popitem()随机删除字典中的一个键值对,并获取到该键值对

6.setdefault() 设置值

dic={
    "k1":
        "vvvvv",
    "k2":
        "bbbb"
}
v = dic.setdefault("k1")
print(v)   #===>输出vvvvvv,

#当设置的值已经存在时不做改变,并返回该key对应的值

v1 = dic.setdefault("ssss","bbbb")
print(v1)  #输出===>bbbb
print(dic)  #输出===>{'k1': 'vvvvv', 'k2': 'bbbb', 'ssss': 'bbbb'}

#当设置的值不存在时,将设置的值添加到字典中,并返回对应的值

7.更新字典 update()

dic={
    "k1":
        "vvvvv",
    "k2":
        "bbbb"
}

dic.update({"k1":"llll","ssss":"bbbb"})
#简便写法:dic.update(k1="llll",ssss="bbbb")

print(dic)  #输出===>{'k1': 'llll', 'k2': 'bbbb', 'ssss': 'bbbb'}

#当更新的的值已存在时,将新的值覆盖掉旧的值.当更新的值不存在时,将新的值添加到字典中

 

原创文章,作者:3628473679,如若转载,请注明出处:https://blog.ytso.com/276321.html

(0)
上一篇 2022年7月23日
下一篇 2022年7月23日

相关推荐

发表回复

登录后才能评论