稍微比较全的那种字典

该博客主要介绍了Python中字典的相关知识。字典用于存储大量数据,比列表快,可关联数据。详细讲解了字典的增、删、改、查操作,还介绍了解构操作。此外,说明了字典键的要求,以及不同数据类型的可变与不可变特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

字典

无序的

字典用于存储大量数据,字典要比列表快,将数据和数据之间进行关联

lst=["刘德华","张学友","林俊杰","胡歌"]
lst2=["帅","酷","厉害","好"]
print(lst[0]+lst[0])
结果
刘德华 帅

定义一个字典:

dic={"宋佳":男,"分数":80,"性格":"爱笑"}
字典中每一个逗号分割叫一个元素"宋佳”是一个键:男是一个值--键值对
dic={"宋佳":"男","分数":80,"性格":"爱笑"}
print(dic)
结果
{'宋佳': '男', '分数': 80, '性格': '爱笑'}

字典的键:

可哈希的--不可变的数据类型--避免哈希冲突使用了 开放寻址法

不可哈希的--可变的数据类型

字典的值可以任意,字典的键要求唯一 如果有重复后面的值将会覆盖前面的值 字典是可变的类型数据 可以修改

  1. 暴力添加

    2.setdefault

dic={"宋佳":"男","分数":80,"性格":"爱笑"}
1.暴力添加
dic["喜好"]="唱跳"
print(dic)
结果
{"宋佳":"男","分数":80,"性格":"爱笑","喜好":"唱跳"}
##  dic[键]=[值]

2.setdefault
dic.setdefault("喜好","唱跳")
                 键    值
这个键去字典查询,如果不存在 就添加 ;存在 就不添加

  1. del通过字典键 删除键值对
  2. pop 通过字典的键 删除键值对 返回值:返回的是被删除的值
  3. clear 清空 清空字典
dic={"宋佳":"男","分数":80,"性格":"爱笑"}
del.dic["喜好"]  #删除键 删除键值对


dic={"宋佳":"男","分数":80,"性格":"爱笑"}
dic.pop("分数")  #删除键 达到删除键值对效果


dic={"宋佳":"男","分数":80,"性格":"爱笑"}
dic.clear()  #清空列表

dic={"宋佳":"男","分数":80,"性格":"爱笑"}
dic["分数"]=60
#  字典中没有某个键值的时候就是添加 当键在字典中存在就是修改
有则改 无则加

update: 更新
dic={"宋佳":"男","分数":80,"性格":"爱笑"}
dic.update(dic)
# uodate括号中的字典级别高于update前面的字典

dic={"宋佳":"男","分数":80,"性格":"爱笑"}
for i in dic
    print(i)
    # 循环获取的是字典中每个键值对的键
    
get
print(dic.get("宋佳"))
#  通过键获取值 ,如果不存在字典中返回None 不存在就会报错
存在就是显示

其他操作:

dic={"宋佳":"男","分数":80,"性格":"爱笑"}
print(dic.keys())  #高仿列表--dict keys(['宋佳'分数','性格'])   获取的是键
print(dic.values()) 获取的是键

for i in dic:
    print(i)  #获取的是键
    print(i,dic.get(i))# 获取所有键和值
    
    ## 高仿列表支持for循环 不支持索引 :
    for i in dic.keys():
        print(i)
        print(i,dic.get(i))
print(del.keys()[0])
#vluse获取字典所有的值  keys获取所有键  items获取的是键和值

print(dic.items())

解构

```python
a,b=10,20
a,b=b,a
print(a,b)
结果
a=20
b=10
a,_,b=(3,4,5)
print(a,b)
a=3
b=5 #等号后面的值和前面的变量名要一一对应
a=10,12 #本质就是一个元组
print(a)
(10,12)

a,b={1:"a",2:"b"}
print(a,b)
1 2

a,b="23"
print(a,b)
2 3

keys--获取字典中所有的键 存放在一个高仿列表中
values--获取字典中所有的值 存放在一个高仿列表中
items --获取字典中所有的键和值 存放在一个高仿列表里的元祖

!!!获取每个元素的键和值

for k,v in dic.items():
print(k,v)

```不可变数据类型/可变数据类型
数据类型 可变/不可变
整型 不可变
字符串 不可变
元组 不可变
列表 可变
集合 可变
字典 可变

转载于:https://www.cnblogs.com/sjf981012-/p/11164879.html

资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在 IT 领域,文档格式转换是常见需求,尤其在处理多种文件类型时。本文将聚焦于利用 Java 技术栈,尤其是 Apache POI 和 iTextPDF 库,实现 doc、xls(涵盖 Excel 2003 及 Excel 2007+)以及 txt、图片等格式文件向 PDF 的转换,并实现在线浏览功能。 先从 Apache POI 说起,它是一个强大的 Java 库,专注于处理 Microsoft Office 格式文件,比如 doc 和 xls。Apache POI 提供了 HSSF 和 XSSF 两个 API,其中 HSSF 用于读写老版本的 BIFF8 格式(Excel 97-2003),XSSF 则针对新的 XML 格式(Excel 2007+)。这两个 API 均具备读取和写入工作表、单元格、公式、样式等功能。读取 Excel 文件时,可通过创建 HSSFWorkbook 或 XSSFWorkbook 对象来打开相应格式的文件,进而遍历工作簿中的每个 Sheet,获取行和列数据。写入 Excel 文件时,创建新的 Workbook 对象,添加 Sheet、Row 和 Cell,即可构建新 Excel 文件。 再看 iTextPDF,它是一个用于生成和修改 PDF 文档的 Java 库,拥有丰富的 API。创建 PDF 文档时,借助 Document 对象,可定义页面尺寸、边距等属性来定制 PDF 外观。添加内容方面,可使用 Paragraph、List、Table 等元素将文本、列表和表格加入 PDF,图片可通过 Image 类加载插入。iTextPDF 支持多种字体和样式,可设置文本颜色、大小、样式等。此外,iTextPDF 的 TextRenderer 类能将 HTML、
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值