python学习(七)字典学习
#!/usr/bin/python # 字典
# 当时学java的时候, 语言基础就学了好久, 然后是各种API, 最后才是集合 # 键值对, 可变 # 1. 映射操作 D = {'food' : 'Spam', 'quantity':4, 'color':'pink'} print(D['food']) # 通过键来获取值 D['quantity'] += 1 # 改变键对应的值 # 另一种构造字典的方法
D = {}
D['name'] = 'Bob'
D['job'] = 'dev'
D['age'] = 40 # 在Python通过字典编写的搜索方法很快 # 重访嵌套
rec = {'name': {'first':'Bob', 'last':'Smith'},
'job':['dev', 'mgr'],
'age':40.5} rec['name'] rec['name']['last']
rec['job']
rec['job'][-1] # 'job'键对应的列表的最后一个值 rec['job'].append('janitor') # 所建立的这些对象都不需要手动释放, 有Python的自动垃圾收集 # 2. 键的排序: for循环
# 字典仅支持通过键获取元素, 而且有时候还是无需的
# 如锅要对字典进行排序, 先获取键的列表, 然后使用sort方法进行排序
# 最后使用for循环逐个显示结果
Ks = list(D.keys()) # 无需列表
Ks.sort() # 对key进行排序 for key in Ks:
print(key, '=>', D[key]) for c in 'spam':
print(c.upper()) x = 4
while x > 0:
print('spam!' * x)
x -= 1 # 迭代和优化 squares = [ x ** 2 for x in [1, 2, 3, 4, 5]]
print(squares) squares = []
for x in [1, 2, 3, 4, 5]:
squares.append(x ** 2) # 列表解析和相关的函数编程工具, 如map和filter, 通常运行得比for循环快
# 首先为了简单和可读性去编写代码, 在程序可以工作, 并证实确实有必要考虑性能之后, 再考虑该问题
# 关于这个python提供了time以及timeit和profile模块 # 不存在的键: if 测试 D = { 'a' : 1, 'c' : 3, 'b' : 2} D['e'] = 99 # D['f'] 键'f'不存在, 这样使用会报错的
# in关系表达式允许我们查询字典中一个键是否存在 if not 'f' in D:
print('missing key f in D') value = D.get('x', 0) # 获取键'x'的值, 如果没有获取到那么就是0付给value D[None] = 4 # None也可以作为键耶
print(D)
python学习(七)字典学习的更多相关文章
- 系统学习python第七天学习笔记
1.get方法用法补充 info = {'name':'王刚蛋','hobby':'铁锤'} while True: data = input('请输入:') val = info.get(data, ...
- Dictionary Learning(字典学习、稀疏表示以及其他)
第一部分 字典学习以及稀疏表示的概要 字典学习(Dictionary Learning)和稀疏表示(Sparse Representation)在学术界的正式称谓应该是稀疏字典学习(Sparse Di ...
- 字典学习(Dictionary Learning, KSVD)详解
注:字典学习也是一种数据降维的方法,这里我用到SVD的知识,对SVD不太理解的地方,可以看看这篇博客:<SVD(奇异值分解)小结 >. 1.字典学习思想 字典学习的思想应该源来实际生活中的 ...
- 孤荷凌寒自学python第七十天学习并实践beautifulsoup对象用法3
孤荷凌寒自学python第七十天学习并实践beautifulsoup对象用法3 (完整学习过程屏幕记录视频地址在文末) 今天继续学习beautifulsoup对象的属性与方法等内容. 一.今天进一步了 ...
- Python 基础学习之字典
1.基础代码 ##第六章 字典学习 test={'} print(test['a']) print(test['b']) 返回结果为: black123 2.基础知识: Python中的字典是一系列键 ...
- 《python基础教程(第二版)》学习笔记 字典(第4章)
<python基础教程(第二版)>学习笔记 字典(第4章)创建字典:d={'key1':'value1','key2':'value2'}lst=[('key1','value1'),(' ...
- Python的dict字典结构操作方法学习笔记
Python的dict字典结构操作方法学习笔记 这篇文章主要介绍了Python的dict字典结构操作方法学习笔记本,字典的操作是Python入门学习中的基础知识,需要的朋友可以参考下 一.字典的基本方 ...
- python学习(10)字典学习,写一个三级菜单程序
学习了字典的应用.按老师的要求写一个三级菜单程序. 三级菜单程序需求如下: 1.深圳市的区--街道--社区---小区4级 2.建立一个字典,把各级区域都装进字典里 3.用户可以从1级进入2级再进入3级 ...
- 吴裕雄 python 机器学习——数据预处理字典学习模型
from sklearn.decomposition import DictionaryLearning #数据预处理字典学习DictionaryLearning模型 def test_Diction ...
- Python 2.7 学习笔记 字典(map)的使用
python中的字典,就是通常说的map,即 key/value集合的数据结构. 本文来介绍下在python下如何使用字典. 对于map这种数据结构能干什么,我们就不说了,这是一个常见的数据结构,我们 ...
随机推荐
- jQuery重要插件!
原文发布时间为:2009-08-05 -- 来源于本人的百度文章 [由搬家工具导入] 强烈推荐:240多个jQuery插件 概述 jQuery 是继 prototype 之后又一个优秀的 Javasc ...
- C#获取二维数组的行数和列数及其多维。。。
原文发布时间为:2008-11-26 -- 来源于本人的百度文章 [由搬家工具导入] 有一个二维数组sz[,] 怎样获取sz 的行数和列数呢? sz.GetLength(0) 返回第一维的长度(即行数 ...
- C++ 求幂的运算符是什么?
1.VB里面求幂的运算符是“^” 2.C++没有求幂的运算符, c++头文件加 #include<math.h>使用pow(x,y),可算出x的y次幂 3.C++中 “^”是按位“异或”运 ...
- linux2.4内核调度
进程调度需要兼顾3种进程:交互进程,批处理进程,实时进程,在设计一个进程调度机制时需要考虑具体问题 (1)调度时机? 答:进程在用户空间可以pause()或者让内核设置进程为睡眠状态,以此调度,调度还 ...
- hdu 4985(模拟)
Little Pony and Permutation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (J ...
- WKWebView携带不上cookie的问题处理
自从WKWebView推出后Apple官方及众多开发者都推荐使用它代替UIWebView,确实通过加载速度.占用内存方面的对比都要好上几个档次,索性就把项目中的浏览器控件换成了WKWebView,一开 ...
- [Machine Learning with Python] Data Preparation through Transformation Pipeline
In the former article "Data Preparation by Pandas and Scikit-Learn", we discussed about a ...
- Unity工程资源破解
Unity工程资源提取其实还是很方便的,网上也有很多相关介绍,比如雨凇就专门写了一遍关于破解Unity资源的文章(http://www.xuanyusong.com/archives/3618 ...
- luogu P2949 [USACO09OPEN]工作调度Work Scheduling
题目描述 Farmer John has so very many jobs to do! In order to run the farm efficiently, he must make mon ...
- django博客开发
找一文件夹作为项目文件夹1 django-admin.py startproject mysite建立工程2 cd mysite python manage.py startapp blog 建立第一 ...