首页 > 其他分享 >4.14号今日总结

4.14号今日总结

时间:2023-04-14 21:44:06浏览次数:40  
标签:总结 ... tel 4.14 4127 jack guido 今日 字典

字典

另一个非常有用的 Python 内建数据类型是字典。

序列是以连续的整数为索引,与此不同的是,字典以关键字为索引,关键字可以是任意不可变类型,通常用字符串或数值。

理解字典的最佳方式是把它看做无序的键=>值对集合。在同一个字典之内,关键字必须是互不相同。

一对大括号创建一个空的字典:{}。

这是一个字典运用的简单例子:

>>> tel = {'jack': 4098, 'sape': 4139}
>>> tel['guido'] = 4127
>>> tel
{'sape': 4139, 'guido': 4127, 'jack': 4098}
>>> tel['jack']
4098
>>> del tel['sape']
>>> tel['irv'] = 4127
>>> tel
{'guido': 4127, 'irv': 4127, 'jack': 4098}
>>> list(tel.keys())
['irv', 'guido', 'jack']
>>> sorted(tel.keys())
['guido', 'irv', 'jack']
>>> 'guido' in tel
True
>>> 'jack' not in tel
False

构造函数 dict() 直接从键值对元组列表中构建字典。如果有固定的模式,列表推导式指定特定的键值对:

>>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)])
{'sape': 4139, 'jack': 4098, 'guido': 4127}

此外,字典推导可以用来创建任意键和值的表达式词典:

>>> {x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}

如果关键字只是简单的字符串,使用关键字参数指定键值对有时候更方便:

>>> dict(sape=4139, guido=4127, jack=4098)
{'sape': 4139, 'jack': 4098, 'guido': 4127}

遍历技巧

在字典中遍历时,关键字和对应的值可以使用 items() 方法同时解读出来:

>>> knights = {'gallahad': 'the pure', 'robin': 'the brave'}
>>> for k, v in knights.items():
...     print(k, v)
...
gallahad the pure
robin the brave

在序列中遍历时,索引位置和对应值可以使用 enumerate() 函数同时得到:

>>> for i, v in enumerate(['tic', 'tac', 'toe']):
...     print(i, v)
...
0 tic
1 tac
2 toe

同时遍历两个或更多的序列,可以使用 zip() 组合:

>>> questions = ['name', 'quest', 'favorite color']
>>> answers = ['lancelot', 'the holy grail', 'blue']
>>> for q, a in zip(questions, answers):
...     print('What is your {0}?  It is {1}.'.format(q, a))
...
What is your name?  It is lancelot.
What is your quest?  It is the holy grail.
What is your favorite color?  It is blue.

要反向遍历一个序列,首先指定这个序列,然后调用 reversed() 函数:

>>> for i in reversed(range(1, 10, 2)):
...     print(i)
...
9
7
5
3
1

要按顺序遍历一个序列,使用 sorted() 函数返回一个已排序的序列,并不修改原值:

>>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']
>>> for f in sorted(set(basket)):
...     print(f)
...
apple
banana
orange
pear

标签:总结,...,tel,4.14,4127,jack,guido,今日,字典
From: https://www.cnblogs.com/psh888/p/17320029.html

相关文章

  • 4.14总结
    今日学习ATM项目packagecom.fzyun;importjava.util.ArrayList;importjava.util.Random;importjava.util.Scanner;publicclassATMSystem{publicstaticvoidmain(String[]args){//1.定义一个账户类//2.定义一个集合容器,负责以后存储全部的......
  • 4.14每日总结
    所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。我们永远不要信任用户的输入,我们必须认定用户输入的数据都是不安全的,我们都需要对用户输入的数据进行过滤处理。以下实例中,输入的用户名必须为字母、数字......
  • 2023.4.14每日总结
    cookie和session在传值中的作用,能够让我们十分方便的对于这些用户名和密码很多地方都需要的变量一直传值的问题,还使用了一些关于css布局的问题,将背景换成自己喜欢的图片,使得整个项目变得更加的好看,还学会了使用<a>进行传值,还有jsp:forward jsp:param这两个的传值和使用Login.jsp......
  • 2023.04.14 定时测试随笔 T2
    T2P1593因子和传送门:洛谷P1593既然要求因子和,那我们就先对\(a\)分解质因数,得:              \(a=p_1^{k_1}+p_2^{k_2}+p_3^{k_3}...+p_n^{k_n}\)所以\(a^b\)质因数分解就会得到:              \(a^b=p_1^{k_1*b}+p_2^{k_2*b}+......
  • 编程一小时2023.4.14
    1.#include<bits/stdc++.h>usingnamespacestd;classnumber{intfz,fm;friendnumberoperator+(number&n1,number&n2);public:number(inta=0,intb=1){fz=a;fm=b;}friendintgcd(inta,intb);friendintmin_gb(number&n1......
  • 2023.4.14
    1.问题描述:设计一个计算器程序,能够进行基本的加、减、乘、除运算。2.设计思路:程序需要输入两个数和一个运算符,根据运算符对两个数进行对应的运算,并输出结果。3.程序流程图:开始->输入第一个数->输入第二个数->输入运算符->根据运算符进行运算->输出结果->结束4.......
  • 总结与归纳之图论
    (再开一个大坑好吧)前言总论+前置概念正文树上问题大杂烩拓扑序短路问题大杂烩生成树问题大杂烩斯坦纳树分层图差分约束连通性问题大杂烩欧拉/哈密顿路问题大杂烩二分图图匹配问题大杂烩网络流问题大杂烩特殊图问题大杂烩......
  • 总结与归纳之数据结构
    (开一个大坑)前言总论正文基础数据结构栈队列链表数据哈希(这也基础?)并查集传统+基础变种并查集可持久化并查集单调栈/队列ST表树状数组线段树传统线段树李超线段树segbeats主席树动态开点与标记永久化线段树分裂与合并线段树分治平衡树传统平衡树可持久化......
  • scrum项目冲刺_Day3会议总结
    今日团队任务:图片转excel(5天)前端开发(需团队风格统一)调用接口(后端),json数据->excel前后端连接           任烁玚(进行中)            图片转html(8天)前端开发(需团队风格统一)图片转为pdf(存储)pdf转html(调用接口)[html存储到数据库]前后台数据同......
  • 2023.04.14 定时测试随笔 T1
    T1P2170选学霸传送门:洛谷P2170本题考察的是并查集优化背包DP,所以我们通过并查集将\(n\)个点变成\(group\)个连通块,那么每个连通块里面的点要么都选要么都不选,状态\(dp[i]\)定义为可以选\(i\)个学霸且不会抗议,算出所有可能的结果,再枚举\(1\)~\(n\),求出最接近\(m......