Python字典,插入排序

每日一记

一,复习
元组 tuple a=()
列表 list b=[]
二,字典{}:存储方式-key-value
1,创建
a = {“name”:“zs”,“age”:18}
2,为什么有键?
确定树
3,键值可以是字符串,数字,元组,不能是列表
b = {12:15}
c = {(1):15}
4,键值不能相同,如果相同会被覆盖
5,value值的类型,没有限制
6,操作 增删改查
#添加
b={“name”:“张三”,“age”:15,“sex”:“男”}
b[“tel”]=138
print(b)
#修改
b={“name”:“张三”,“age”:15,“sex”:“男”}
b[“tel”]=138
b[“tel”]=139
print(b)
#删除
b={“name”:“张三”,“age”:15,“sex”:“男”}
del b[“name”]
#del b
print(b)
#查询
b={“name”:“张三”,“age”:15,“sex”:“男”}
print(b[“name”])

7,字典的内置函数&方法


b={"name":"张三","age":15,"sex":"男"}
print(b.keys())
print(b.values())
print(b.items())
for k,value in b.items():
    print(k,value)
else:
    print("hello")

#获取
b={"name":"张三","age":15,"sex":"男"}
print(b.get("name"))
#删除
b={"name":"张三","age":15,"sex":"男"}
b.pop("name")
print(b)
#添加(更新)
b={"name":"张三","age":15,"sex":"男"}
b.update({"name1":"aaa","age":19})
print(b)

#浅表复制
b={"name":"张三","age":15,"sex":"男"}
a = b.copy()
print(id(a))
print(id(b))
#清空
b={"name":"张三","age":15,"sex":"男"}
b.clear()
print(b)
#popitem()默认删除最后一项
b={"name":"张三","age":15,"sex":"男"}
b.popitem()
print(b)


#a={"a":"A"}
b={"name":"张三","age":15,"sex":"男","a":[1,2,3,4]}
#print(len(b))
#print(str(b))
print("name"in b.keys())

#排序(3种方式)
d = {"a":1,"b":4,"c":2}
a = sorted(d.items(),key=lambda x:x[1],reverse=False)
print(a)

import operator
d = {"a":1,"b":4,"c":2}
a = sorted(d.items(),key=operator.itemgetter(1),reverse=False)
print(a)

d = {"a":1,"b":4,"c":2}
f = zip(d.keys(),d.values())
a = sorted(f)
print(a)

插入排序:
将列表中的一个元素与已经排序过的列表中的元素进行比较,如果前面已经排序的列表中的元素比这个元素大,则顺序后移,直到找到插入的位置

#插入排序
#5 8 2 6 7
def insertSort(list):
    for i in range(1,len(list)):
        temp = list[i]
        j = i-1
        while j>=0 and list[j]>temp:
            list[j+1]=list[j]
            j -=1
        list[j+1] = temp
a = [5,8,2,6,7]
insertSort(a)
print(a)
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值