数据-元祖

元祖的是可存放多个值,不可变,有顺序的,从左向右编号。

作用是可以用来存储一些不可以更改的配置文件

基本 语法:

#创建新元祖

tuple = (,,,,,)

#索引,写法同list

tuple[3]

#切片,写法同list

tuple[a:b]

#循环

for i in tuple:

  print()

#求长度

len(tuple)

数据类型-哈希

哈希是将一些数据转换成数字编码,方便寻找。

只能对固定的,不可变的值进行哈希;如果一个值可以被哈希,则说明其不可变。

数据类型-字典

字典就是储存的键值对:

  键不能重复,要求能被哈希

  值,可以有多个,可以有重复,可以不唯一

  无序

  字典可以包含一切,包括:字符,列表,元祖,字典等等等

基本语法:

#创建新字典

dic = {key1:value,key2:value2,key3:value3}

# 返回所有key值

dic.key()

#返回所有value值

dic.value()

#返回所有键值对值,以元祖或者列表的形式

dic.items()

#新增

dic['new_key1'] = 'new_value1'   增加了一个new_key1:new_value1 键值对

#删除

dic.pop(key[,default])   删除Key;如果没有key返回default值

del dic[key]

#修改

dic['key'] = ‘new_value'   如果 key是存在的,则new_value会替代原来的value

dic.update(dic2) 将字典2添加到字典1上,当存在相同的key值时,则会覆盖dic1的value值。

#查看

dict.get(key,default),查看key值是否在dic中,如果存在返回value值,如果不存大,返回default值

key in dic, 查看key是否在dic中

#循环

for i in dic.keys()  循环dic中的key

for k in dic.keys():
print(k)#k是key

for j in dic.items()循环dic中的键值对


#得到字典的value 和 value,形成一个元组

for b in dic.items():
    print(b)  #b是(key,value)元祖

for k in dic  循环dic中的key

#得到字典的key值
for a in dic:
print(a)#a是key

for i,k in enumerate(dic)  枚举字典

for i,k in enumerate(dic):
print(i,k,dic[k])#i是列表编号,k是key

数据类型-集合

集合的作用:

1. 去重(所以可hash)

2,关系测试

集合的特点:

1. 互异性,可hash

2. 无顺序,使用hash查询

3.确定性,不能改变,可hash

基本语法

基本语法与计算:

#创建集合

s1 = set()    将集合

s1 = {a,b,c...}

#增加

add()    类似于append,增加一个个元素

update()   可以一次增加多个元素,注意一个值会被拆成多个值

#删除

discard()  抛出;抛不出,不会异常

remove() 抛出;抛不出,报错

pop()  随机抛;抛不出,报错

clear()   清空集合

#交集运算

s1.intersection(s2)

s1 & s2

#并集运算

s1.union(s2)

s1 | s2

#差集运算

s1.difference(s2)

s1 - s2

#对称差集运算

s1.symmetric_difference(s2)

s1 ^ s2

#比较运算

s1.isdisjoint(s2)  s1,s2是否相交

s1.issubset(s2)     s1<=s2   s1是否是s2的子集

s1.issuperset(s2)    s1>=s2   s1是否是s2的超集

20181125第二章节总结part3的更多相关文章

  1. 《HBase in Action》 第二章节的学习总结 ---- HBase基本组成

    准备工作:采用的HBase版本是:CDH4.5,其中的Hadoop版本是:hadoop-2.0.0-cdh4.5.0:HBase版本是:hbase-0.94.6-cdh4.5.0: Hbase的配置文 ...

  2. 《Lucene in Action》(第二版) 第二章节的学习总结 ---- IndexWriter+Document+Field

    这一章节的学习,主要是学会如何创建索引,使用索引 一.创建索引 1.从原始文件中提取内容.这里的文件,可以是文本文件,也可以是二进制文件.文本文件(txt),lucene可以直接处理:而二进制文件(w ...

  3. C程序第二章节:算法

    1.主要讲了:算法,3种基本结构化的算法(顺序,选择,循环结构),N-S流程图表示算法,伪代码表示算法. 2.输入10个数,输出其中最大的一个数. #include <stdio.h>in ...

  4. docker学习端口映射---第二章节

    一.运行一个web应用 首先,下载一个docker镜像: [root@k8s-01 ~]# docker pull training/webapp 运行webapp的容器: [root@k8s-01 ...

  5. 从零开始写JavaWeb框架(第二章节)

    这一章太多了...好累,不想写那么细了,就做一点总结吧. package org.smart4j.chapter2.controller; import java.io.IOException; im ...

  6. 第二章节 BJROBOT IMU 自动校正 【ROS全开源阿克曼转向智能网联无人驾驶车】

    1.把小车平放在地板上,用资料里的虚拟机,打开一个终端 ssh 过去主控端启动roslaunch znjrobot bringup.launch . 2.再打开一个终端,ssh 过去主控端,在 ~/c ...

  7. docker学习端口连接docker容器---第四章节

    一.Docker容器连接 前面的第二章节,我们事先通过网络端口来访问运行在docker容器内的服务,我们也可以通过端口连接到一个docker容器 我们可以指定容器绑定的网络地址,如绑定127.0.0. ...

  8. Kotlin中变量不同于Java: var 对val(KAD 02)

    原文标题:Variables in Kotlin, differences with Java. var vs val (KAD 02) 作者:Antonio Leiva 时间:Nov 28, 201 ...

  9. 烂泥:数据库管理之phpmyadmin免密码配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 其实这篇文章很早就想写了,但是一直没有时间.刚好今天下午稍微空了点,就把这篇文章整理出来 ...

随机推荐

  1. Python的re模块中search与match的区别

    1.search和match: search:在整个字符中匹配,如果找不到匹配的就返回None match:在字符串开始位置匹配如果不匹配就返回None 2.效率对比: search: match:

  2. core ML学习

    Core ML工具是一个Python包(coremltools),托管在Python包索引(PyPI)上. 从表格中可看出,支持caffe工具. 使用与模型的第三方工具相对应的Core ML转换器转换 ...

  3. redis集群结构图

    在JAVA编程时,使用哨兵池获取jedis来进行数据的操作,哨兵对对集群进行监视,当主节点宕掉时,会自动将子一个子节点升级为主节点,原来的主节点上线时会自动变为从节点,主节点的变化,对于使用哨兵池方式 ...

  4. P2757 [国家集训队]等差子序列

    P2757 [国家集训队]等差子序列 题目传送门 推荐一篇好题解 此题要求我们在一个序列中找出一个等差子序列. 显然,我们只需要考虑子序列长度len=3的情况,因为在长度为4的子序列中必定有一个长度为 ...

  5. Google 以 Flutter 作为原生突破口,移动端即将统一了

    Android 的前生今世 Android 系统 Android系统作为全球第一大系统,基于 Java 开发的移动端有着诸多的性能优势. 2018年前 H5 的性能瓶颈和 RN 的停更 导致业界对跨平 ...

  6. 解决springboot启动失败问题:Unable to start embedded container;

    将一个springboot项目导入到eclipse后,启动时报错Unable to start embedded container,以下时全部错误信息: Application startup fa ...

  7. MySQL ERROR 1820 (HY000)

    You must reset your password using ALTER USER statement before executing this statement报错处理 解决方式如下: ...

  8. 网络流24题——数字梯形问题 luogu 4013

    题目描述:这里 极其裸的一道费用流问题 首先分析第一问,由于要求一个点只能经过一次,所以我们将梯形中的每一个点拆成两个点(记为入点和出点,顾名思义,入点用来承接上一行向这一行的边,出点用来向下一行连边 ...

  9. C++智能指针剖析(上)std::auto_ptr与boost::scoped_ptr

    1. 引入 C++语言中的动态内存分配没有自动回收机制,动态开辟的空间需要用户自己来维护,在出函数作用域或者程序正常退出前必须释放掉. 即程序员每次 new 出来的内存都要手动 delete,否则会造 ...

  10. 2018-2019-2 网络对抗技术 20165323 Exp3 免杀原理与实践

    一.实践内容 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程 1.2 通过组合应用各种技术实现恶意代码免杀 ( ...