python中dict获取关键字与值的实现
目录
- dict获取关键字与值
- values()
- items()
- 字典dict(关键字对应的值为list)
- 方法一
- 方法二
dict获取关键字与值
values()
>>> d {'p': 34, 'l': 54, 'b': 88} >>> for value in d.values(): ... print(value) ... 34 54 88
items()
>>> for key,value in d.items(): ... print(key,value) ... p 34 l 54 b 88
字典dict(关键字对应的值为list)
方法一
代码
# method 1 pages = {} page = [] for img_name in os.listdir(args.image_dir): pre_str = img_name[:2] #print(pre_str) if pre_str not in pages.keys(): tmp_list = [] tmp_list.append(os.path.join(args.image_dir, img_name)) pages[pre_str] = tmp_list else: pages[pre_str].append(os.path.join(args.image_dir, img_name)) print(pages)
输出
方法二
代码
# method 2 from collections import defaultdict pages = defaultdict(list) for img_name in os.listdir(args.image_dir): pre_str = img_name[:2] #print(pre_str) pages[pre_str].append(os.path.join(args.image_dir, img_name)) print(list(pages.items())) print(pages)
输出 print(list(pages.items()))的输出
print(pages)的输出
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Python字典取键、值对的方法步骤
1. 取键:keys()方法 #spyder bb={'人才/可怕':23,'伏地魔&波特':'army','哈哈哈,人才,回合':'hhh'} for ii in bb.keys(): print(ii) #输出: #人才/可怕 #伏地魔&波特 #哈哈哈,人才,回合 2. 取值:values()方法 for jj in bb.values(): print(jj) #输出 #23 #army #hhh 3. 取键值对:items()方法 for kk,vv in bb.items():
-
python中dict()的高级用法实现
collections中defaultdict的用法 一.字典的键映射多个值 将下面的列表转换成字典 一个字典就是一个键对应一个单值得映射,而上面的列表中有相同的键,如果你想要一个键映射多个值,那么就需要将这多个值放到另外的序列中,比如list或者set里面,像下面这样: 你可以很方便的使用 collections 模块中的 defaultdict 来构造这样的字典. defaultdict 的一个特征是它会自动初始化每个 key 刚开始对应的值. 当然这个默认的容器不一定是 list, 也可以
-
python 中dict的元素取值操作
如下所示: dict.get(key, default=None) key – 字典中要查找的键. default – 如果指定键的值不存在时,返回该默认值值. {'1*': 9, '2*': 6, '**': 15}.values() Out[377]: dict_values([9, 6, 15]) {'1*': 9, '2*': 6, '**': 15}.keys() Out[378]: dict_keys(['1*', '2*', '**']) {'1*': 9, '2*': 6, '*
-
python中dict使用方法详解
dict的特性 dict是python中的一个可变的数据类型,用{}表示,dict的key必须是不可变的数据类型,而value的数据类型可以任意. 格式:{key:value,key:value,key:value} 注: 键值对如果是字符串使用单引号,最后一个键值对没有逗号 dict的优点 ①:查询速度快,可以二分查找 ②:key是不可以重复的 注: 不可变数据类型: 元组,bool,int , str 可以hash set 可变数据类型: dict ,list dict的方法 1,增加的方法
-
python中dict获取关键字与值的实现
目录 dict获取关键字与值 values() items() 字典dict(关键字对应的值为list) 方法一 方法二 dict获取关键字与值 values() >>> d {'p': 34, 'l': 54, 'b': 88} >>> for value in d.values(): ... print(value) ... 34 54 88 items() >>> for key,value in d.items(): ... p
-
深入浅析Python中的yield关键字
前言 python中有一个非常有用的语法叫做生成器,所利用到的关键字就是yield.有效利用生成器这个工具可以有效地节约系统资源,避免不必要的内存占用. 一段代码 def fun(): for i in range(20): x=yield i print('good',x) if __name__ == '__main__': a=fun() a.__next__() x=a.send(5) print(x) 这段代码很短,但是诠释了yield关键字的核心用法,即逐个生成.在这里获取了两个生成
-
详解如何修改python中字典的键和值
我们知道python中字典是无序的,它们都是通过hash去对应的.一般的如果我们需要修改字典的值,只需要直接覆盖即可,而修改字典的键,则需要使用字典自带的pop函数,示例如下: t = {} t['a'] = 1 t['b'] = 2 # 修改字典的值 print('未修改前:', t) t['b'] = 3 print('修改后: ', t) # 修改字典的键 print('-' * 30) print('未修改前:', t) t['c'] = t.pop('a') print('修改后: '
-
对Python中DataFrame选择某列值为XX的行实例详解
如下所示: #-*-coding:utf8-*- import pandas as pd all_data=pd.read_csv("E:/协和问答系统/SenLiu/熵测试数据.csv") #获取某一列值为xx的行的候选列数据 print(all_data) feature_data=all_data.iloc[:,[0,-1]][all_data[all_data.T.index[0]]=='青年'] print(feature_data) 实验结果如下: "C:\Pro
-
python 中如何获取列表的索引
1.index方法 list_a= [12,213,22,2,32] for a in list_a: print(list_a.index(a)) 结果: 0 1 2 3 4 如果列表的没有重复的话那么用index完全可以的,那么如果列表中的元素有重复的呢? list_a= [12,213,22,2,2,22,2,2,32] for a in list_a: print(list_a.index(a)) 结果:0 1 2 3 3 2 3 3 8<br><br> 很显然结果不是你想
-
Python中base64与xml取值结合问题
Base64是一种用64个字符来表示任意二进制数据的方法. 用记事本打开exe.jpg.pdf这些文件时,我们都会看到一大堆乱码,因为二进制文件包含很多无法显示和打印的字符,所以,如果要让记事本这样的文本处理软件能处理二进制数据,就需要一个二进制到字符串的转换方法.Base64是一种最常见的二进制编码方法. 具体代码如下所述: import base64 from xml.dom import minidom # 打开xml文件 dom=minidom.parse("D:\\pythonp\\t
-
讲解Python 中的 with 关键字
我们中的许多人在 Python 代码中一遍又一遍地看到这个代码片段: with open('Hi.text', 'w') as f: f.write("Hello, there") 但是,我们中的一些人不知道 with 有什么用,以及为什么我们需要在这里使用它.在此阅读中,您将找到关于 with 可解决的几乎所有问题.让我们开始吧! 首先,让我们考虑一下如果不使用 with 关键字我们需要做什么.在这种情况下,我们需要先打开文件并尝试执行 write. 不管成功与否,我们最好在最后关闭
-
深入理解python中函数传递参数是值传递还是引用传递
目前网络上大部分博客的结论都是这样的: Python不允许程序员选择采用传值还是传 引用.Python参数传递采用的肯定是"传对象引用"的方式.实际上,这种方式相当于传值和传引用的一种综合.如果函数收到的是一个可变对象(比如字典 或者列表)的引用,就能修改对象的原始值--相当于通过"传引用"来传递对象.如果函数收到的是一个不可变对象(比如数字.字符或者元组)的引用,就不能 直接修改原始对象--相当于通过"传值"来传递对象. 你可以在很多讨论该问题
-
Python 中的参数传递、返回值、浅拷贝、深拷贝
1. Python 的参数传递 Python的参数传递,无法控制引用传递还是值传递.对于不可变对象(数字.字符.元组等)的参数,更类似值传递:对于可变对象(列表.字典等),更类似引用传递. def fun1(n): print(n) # n在没修改前,指向的地址和main函数中n指向的地址相同 n = 20 # n在修改后,指向的地址发生改变,相当于新建了一个值为20的参数n def fun2(l): print(l) # l在没修改前,指向的地址和main函数中l指向的地址相同 l = [5,
随机推荐
- 如何判断电子邮件的地址格式是否正确?
- Linux 下载百度网盘大文件的方法
- js页面跳转的常用方法整理
- Python爬虫模拟登录带验证码网站
- JS随机打乱数组的方法小结
- BootStrap中Table隐藏后显示问题的实现代码
- php中动态修改ini配置
- PHP编程开发怎么提高编程效率 提高PHP编程技术
- PHP的面试题集
- 解决Android使用Handler造成内存泄露问题
- 利用js实现前台动态添加文本框,后台获取文本框内容(示例代码)
- 利用Celery实现Django博客PV统计功能详解
- IE5.0:打开文件夹或直接运行程序
- Nginx反向代理实现支持长连接详解
- Google Adsense优化心得
- 详解json string转换为java bean及实例代码
- Python线程指南详细介绍
- YII使用url组件美化管理的方法
- android如何添加桌面图标和卸载程序后自动删除图标
- C#基于NPOI生成具有精确列宽行高的Excel文件的方法