# #  集合:
# se1 = { 1,3,4,5,'a'} # 如果直接添加元素,不能直接添加可变元素
# se2 = set() # 定义一个空集合
# se3 = {'a'} # 定义个单元素的集合
# print(se1) # {'a', 1, 3, 4, 5} 证实 set 是无序的
# ## 唯一性,去重, # # 交集 两个集合中相同元素组成的集合
# se1 = { 1,3,4,5 }
# se2 = { 2,3,4,6 }
# print( se1 & se2 ) # {3, 4} # # 并集 两个集合中所有不同元素组成的集合
# se1 = { 1,3,4,5 }
# se2 = { 2,3,4,6 }
# print( se1 | se2 ) # {1, 2, 3, 4, 5, 6} # # 差集
# se1 = { 1,3,4,5 }
# se2 = { 2,3,4,6 }
# print( se1 - se2 ) # {1, 5} 输出se1存在,se2不存在的,
# print( se2 - se1 ) # {2, 6}} 输出se2存在,se1不存在的, # 集合的方法 (可变的数据类型)
# se1 = { 1,3,4,5 }
# se1.add('abc') # 添加进集合 {1, 3, 4, 5, 'abc'}
# se1.update( 'fkoi') # 拆分后添加每个元素进集合(不可以是嵌套的列表 ){1, 'i', 'f', 3, 4, 5, 'o', 'k'}
# se1.pop() # 弹出一个元素
# se1.remove(4) # 删除指定元素 {1, 3, 5} 删除不存在则报错
# se2 = { 1,4 }
# print( se2.isdisjoint(se1) ) # 判断集合是否存在交集,是则返回 False
# print( se1.issuperset(se2) ) # 判断 se2j 是否为 se1 的子集合,是则返回 True # 字典    (无序)
  key 不可以是 列表,字典 ,value 可以是任意类型,
# 可变的散列类型,以键值对的形式 key : value 存储数据
# di1 = { 'key':'value' }
# key 的值是唯一的,不能是可变类型
# value 可以是可变类型
# 其是无序的 # 字典的方法
di = dict() # di{}
di.clear() # 清空字典
di.setdefault(1,3) # 如果 key 存在则查询,如果 不存在则添加,
di = { 1:2, 3:4, 5:5 }
 del di[ kye的值 ]     删除指定的 key 的键值
di.pop(1) # 删除指定的 key 的键值对并返回, 不存在则报错
di.popitem() # 随机删除,
 x = di[ kye的值 ]      获取指定 key 的 value
x = di.get(0) # 获取指定 key 的 value ,不存在则返回 None
 x = di.get( key,返回值 ) # 获取指定 key 的 value ,不存在则返回 参数2的值, 
x = di.keys() # 取出所有的键 key dict_keys([1, 3, 5])
  for i in di.keys():
    print( i )        迭代 key 值
x = di.values() # 取出所有的 value dict_values([2, 4, 5])
  for i in di.values():
    print( i )        迭代 values 值
  for i in di.keys():     取 key ,values 值
  print(i,di[i])   for k,v in di.items():     取 key ,values 值
  print(k,v)
x = di.items() # 取出所有的键值对
di.update({1:2,2:3,5:1}) # 将新的字典和老的字典整合,key 重复的,瓣的覆盖老的 # 返回个新字典,key 是第一个参数的拆分,value 是第二个参数
di = dict.fromkeys((1,3,4,5,7),'斌彬') # {1: '斌彬', 3: '斌彬', 4: '斌彬', 5: '斌彬', 7: '斌彬'}
print(di) **kwargs 运算符:
    **               ---->>  幕运算
    +,-              ---->>  一元运算(正负号)
    *,/,% 
    +,-              ---->>  算术运算符
    <,>,<=,>=           ---->>  比较运算符
    =,%=,/=,-=,+=,*=,**=  ---->>  赋值运算符
    is, is not           ---->>  身份运算符
    in, not in           ---->>  成员运算符
    not, and, or        ---->>  逻辑运算符 isinstance( 1, int )    判断参数1,是否为参数2的类型

  可变数据类型:列表list,字典dict;

  不可变数据类型:整型int、浮点型float、字符串型string和元组tuple。

用一句话来概括上述过程就是:“python中的不可变数据类型,不允许变量的值发生变化,如果改变了变量的值,相当于是新建了一个对象,而对于相同的值的对象,在内存中则只有一个对象,内部会有一个引用计数来记录有多少个变量引用这个对象;可变数据类型,允许变量的值发生变化,即如果对变量进行append、+=等这种操作后,只是改变了变量的值,而不会新建一个对象,变量引用的对象的地址也不会变化,不过对于相同的值的不同对象,在内存中则会存在不同的对象,即每个对象都有自己的地址,相当于内存中对于同值的对象保存了多份,这里不存在引用计数,是实实在在的对象。

潭州课堂25班:Ph201805201 第六课:散列类型,运算符优先级和逻辑运算 (课堂笔记)的更多相关文章

  1. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第四课 登录注册 (课堂笔记)

    index.html 首页 <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  2. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第三课 (课堂笔记)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  3. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第二课 (课堂笔记)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  4. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第一课 (课堂笔记)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  5. 潭州课堂25班:Ph201805201 第十课 类的定义,属性和方法 (课堂笔记)

    类的定义 共同属性,特征,方法者,可分为一类,并以名命之 class Abc: # class 定义类, 后面接类名 ( 规则 首字母大写 ) cls_name = '这个类的名字是Abc' # 在类 ...

  6. 潭州课堂25班:Ph201805201 tornado 项目 第六课 用户和图片分享的集成(课堂笔记)

    tornado 相关说明 改善图片上传功能 ,生成唯一的 ID ,与路径拼接,生成 URL, 这里引用 uuid 的 python 库 在 photo.py 中创建个类,用来  辅助用户上传的图片,生 ...

  7. 潭州课堂25班:Ph201805201 django 项目 第四十六课 查错 补缺 (课堂笔记

    从讲项目开始,查找错误,完善笔记,尽可能 翻译没一句代码(以后台为主), 本项目亮点,也是重点 Django ORM中对数据查询的优化(only.defer.select_related) redis ...

  8. 潭州课堂25班:Ph201805201 django 项目 第三十六课 后台文章管理(课堂笔记)

    get 请求, 1,获取文章标签 , 2,拿到前台传来的值, 3,根据前台传来的值在数据库中查询 4.,返回数据到前台,渲染, 分页算法 : 在 utils 下创建  paginator_script ...

  9. 潭州课堂25班:Ph201805201 django 项目 第二十六课 docker简介 (课堂笔记)

    官方文档: https://docs.docker.com/install/linux/docker-ce/ubuntu/#set-up-the-repository 1,更新下sudo apt-ge ...

随机推荐

  1. UML和模式应用5:细化阶段(6)---操作契约

    1.前言 操作契约使用前置和后置条件,描述领域模型里对象的详细变化,作为系统操作的结果. 操作契约可以作为有用的OOA相关的制品. 操作契约可以视为UP用例模型的一部分,它是对用例之处的系统操作的效用 ...

  2. dblink 退出 session

    以dblink的表现为例,我一直认为dblink的远程连接session仅在操作(select,dml)发生时短期存在,在操作完成后依据一定条件保留或退出. 而事实并非如此,随便使用一个远程查询语句如 ...

  3. 在docker中部署centos7镜像

    本篇文章参考自: https://www.cnblogs.com/linjj/p/5606911.html https://blog.csdn.net/u012767761/article/detai ...

  4. hping网络安全工具的安装及使用

    hping是用于生成和解析TCPIP协议数据包的开源工具.创作者是Salvatore Sanfilippo.目前最新版是hping3,支持使用tcl脚本自动化地调用其API.hping是安全审计.防火 ...

  5. 基于Golang设计一套微服务架构[转]

      article- @嘟嘟噜- May/26/2018 18:35:30 如何基于Golang设计一套微服务架构 微服务(Microservices),这个近几年我们经常听到.那么现在市面上的的微服 ...

  6. TensorFlow 框架

    TensorFlow TensorFlow核心程序由2个独立部分组成:   a:Building the computational graph构建计算图   b:Running the comput ...

  7. php计算给定时间之前的函数

    这里给定一个时间,计算这个时间在多久前,比如:2天前,1年前 function prettyDate($date){ $time = strtotime($date); $now = time(); ...

  8. Python中的各种转义符\n\r\t

    转义符 描述 \ 续行符(在行尾时) \\ 反斜杠符号 ' 单引号 " 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵向制表符 \t 横 ...

  9. python 全栈开发,Day26(hashlib文件一致性,configparser,logging,collections模块,deque,OrderedDict)

    一.hashlib文件一致性校验 为何要进行文件一致性校验? 为了确保你得到的文件是正确的版本,而没有被注入病毒和木马程序.例如我们经常在网上下载软件,而这些软件已经被注入了一些广告和病毒等,如果不进 ...

  10. python 全栈开发,Day2(in,while else,格式化输出,逻辑运算符,int与bool转换,编码)

    一.in的使用 in 操作符用于判断关键字是否存在于变量中 a = '男孩wusir' print('男孩' in a) 执行输出: True in是整体匹配,不会拆分匹配. a = '男孩wusir ...