python14 字典类型

devtools/2024/9/23 14:22:59/

字典类型 键值对方式,可变数据类型,所以有增删改功能
声明方式1 {} 大括号,示例 d = {key1 : value1, key2 : value2, key3 : value3 ....}
声明方式2 使用内置函数 dict() 创建1)通过映射函数创建字典zip(list1,list2)
继承了序列的所有操作
与列表不同的是元素是无序的
KEY不能重复,Value可以重复
import  random
'''
字典类型 键值对方式,可变数据类型,所以有增删改功能
声明方式1 {} 大括号,示例 d = {key1 : value1, key2 : value2, key3 : value3 ....}
声明方式2 使用内置函数 dict() 创建1)通过映射函数创建字典zip(list1,list2)
继承了序列的所有操作
与列表不同的是元素是无序的
KEY不能重复,Value可以重复'''
# 声明方式1 字典类型
dataDict = {10 : 'cat' , 20 : 'dog', 30 : 'pet', 20 : 'zoo'}
# key 相同时,value值进行覆盖操作
print(dataDict)# 声明方式2 zip函数
list1 = [10,20,30,40]
list2 = ['cat','dog','pet','zoo','car']
zipobj = zip(list1, list2)
print(zipobj)
# 强转数据类型为字典
d = dict(zipobj)
print(d)# 声明方式3 使用参数创建
dataDict1 = dict(cat = 10, dog = 20)
print(dataDict1)# 元组做为KEY
t = (10,20,30)
print(f'元组做为KEY = {t,'val'}')# 取值
userDict = {'name' : 'stevenChen', 'age' : 30, 'sex' : '男'}
# 取值1
print(f'取值1 :{userDict['name']}')
# 取值2
print(f'取值2 :{userDict.get('name')}')
# 以上两者的取值区别: 如果KEY不存在,userDict[key] 报错, get(key) 可以指定默认值
# 取值3
print(f'取值3 :{userDict.get('name_1')}')# 遍历
for item in userDict.items():print(f'for item ->{item}')# key = value 组成的一个元素
# 分别获取key 和 value
for key,value in userDict.items():print(f'for key,value key={key},value={value}')
# 遍历 keys ,再根据KEY获取VALUE
for key in userDict.keys():print(f'for key => {key}, value->{userDict[key]}')# 相关操作方法
# 添加元素
userDict['No'] = 5018
print(f'添加数据:{userDict}')# 获取所有的key
keys = userDict.keys()
print(f'获取所有的key : {keys}')
# 转成列表查看
print(f'获取所有的转成列表查看keyList : {list(keys)}')
# 转成元组查看
print(f'获取所有的转成元组查看keyList : {tuple(keys)}')# 获取所有的value值
values = userDict.values()
print(f'获取所有的values : {values}')
# 转成列表查看
print(f'获取所有的转成列表查看valueList : {list(values)}')
# 转成元组查看
print(f'获取所有的转成元组查看valueList : {tuple(values)}')# 删除元素
userDict.pop('No')
print(f'删除元素:{userDict}')
# 删除不存的元素
print(f'删除元素带默认值:{userDict.pop('No','不存在')}')# 随机删除
print(f'随机删除:{userDict.popitem()}')
print(f'随机删除后:{userDict}')# 清除所有元素
userDict.clear()
print(f'清除所有:{userDict}')# python中一切皆是对象,每个对象都有一个布尔值
print(f'布尔值:{bool(userDict)}') #空字典,字列表 的布尔值为False# 字典生成式
'''
d = {key : value for item in range}
d = {key : value for key,value in zip(list1 , list2)}
'''
print('字典生成式')
d = {item : random.randint(1, 100) for item in range(4)}
print(d)# 创建两个列表
list10 = [1001,1002,1003]
list11 = ['张三','李四','王五']
d2 = {key : value for key,value in zip(list10, list11)}
print(d2)

END


http://www.ppmy.cn/devtools/51185.html

相关文章

如何计算 GPT 的 Tokens 数量?

基本介绍 随着人工智能大模型技术的迅速发展,一种创新的计费模式正在逐渐普及,即以“令牌”(Token)作为衡量使用成本的单位。那么,究竟什么是Token呢? Token 是一种将自然语言文本转化为计算机可以理解的…

Nginx 部署 Vue 打包项目,将dist目录上传至ngnix中的目录中,遇到的问题

Nginx 部署 Vue 打包项目,将dist目录上传至ngnix中的目录中,遇到的问题 需要指向下面的 router 否则会出现 Vue 的路由在 Nginx 中刷新出现 404 server {listen 8099;server_name localhost;location / {root atjk/dist/;index index.html i…

Linux常⽤服务器构建-ssh和scp

目录 1.ssh <1>ssh介绍 <2>安装ssh A.安装ssh服务器 B.远程登陆 <3>使⽤ssh连接服务器 2.scp 本地⽂件复制到远程&#xff1a; 本地⽬录复制到远程&#xff1a; 远程⽂件复制到本地&#xff1a; 远程⽬录复制到本地&#xff1a; 1.ssh <1>…

C# 集合(一) —— Array类

总目录 C# 语法总目录 集合一 Array 集合1. Array 类1.1 搜索1.2 排序1.3 翻转1.4 转换 集合 1. Array 类 //创建方式 //方式一 Array arr Array.CreateInstance(typeof(string), 3); arr.SetValue("lisi", 0); arr.SetValue("zhangsan", 1); arr.SetVa…

在vue和uniapp中使用 websocket并封装js

vue中 websocket.js import store from /store import { Message } from element-ui var ws; var tt; var lockReconnect false;//避免重复连接 var clientId localStorage.getItem("clientId")//缓存中取出客户端idvar websocket {Init: function (url, clien…

Python数据分析与机器学习在金融风控中的应用

&#x1f4d1;引言 金融风控是金融机构确保其业务健康运行、减少损失的重要手段。随着大数据和人工智能技术的发展&#xff0c;利用Python进行数据分析和机器学习可以为金融风控提供强有力的支持。本文将探讨Python在金融风控中的应用&#xff0c;详细介绍如何利用Python进行数…

windows 用bat文件启动SpringBoot项目,控制台乱码

先展示修改过&#xff0c;乱码问题已解决的bat文件内容&#xff1a; chcp 65001 title start-app java -Dfile.encodingUTF-8 -jar app.jar --server.port8986 --dubbo.protocol.port21886 --logging.file.encodingUTF-8 call "%EXECUTABLE%" run %CMD_LINE_ARGS% 说…

认识Linux操作系统

本文主要参考文档&#xff1a; Linux学习教程&#xff0c;Linux入门教程&#xff08;超详细&#xff09; (biancheng.net) 如果文档有不理解的地方&#xff0c;可以找个视频看看&#xff0c;比如&#xff1a; 【小白入门 通俗易懂】韩顺平 一周学会Linux_哔哩哔哩_bilibili 本…