day06笔记

1.小数据池

is 与 ==的区别

​ is :判断两边的内存地址是否相同

​ ==:判断两边的值是否相同

python中的驻留机制:
数字: -5 ~ 256
字符串: 3.6 乘法时总长度不能超过20
python中的代码块:
数字: -5 ~ 正无穷
字符串: 3.6 乘法时总长度不能超过20

2.深浅拷贝

浅拷贝遇见可变数据类型的时候,具有联动效应
深拷贝遇见可变数据类型的时候,不具有联动效应

浅拷贝:只拷贝第一层的内存地址

示例

dic = {1:2,2:[]}
dic1 = dic.copy()
dic[2]=4
print(dic)
print(dic1)
dic = {1:2,2:[]}
dic1 = dic.copy()
dic[2].append(9)
print(dic)
print(dic1)

深拷贝:不管嵌套多少层,不可变数据类型公用,可变数据类型开辟新的内存空间**

示例

import copy
lst = [1,2,3,[6,7,8,9]]
lst2 = copy.deepcopy(lst)
lst[1]=10
lst[-1].append(6)
print(lst)
print(lst2)

赋值 : 多个变量名指定同一个内存地址就是赋值

3.集合

集合相当于一个没有值得字典

集合的特性:天然去重

集合是无序的可变的

集合的基本操作方法:

s = {1,2,3,4}
# 增
s.add(5)
print(s)
s.update(["1","2","3"]) # 迭代更新
print(s)
# 删
s.remove(1)
print(s)
print(s.pop()) #删除第一个值
print(s)
s.clear() # 清空
print(s)
# 改
先删后加
数据转换
# 查
利用for循环
# 其他操作
交集 &
并集 |
差集 -
反交集 ^
超集 >
子集 <
v1 = {'呵呵','123','板哥','王二麻子'}
v2 = {'123','王二麻子'}
print(v1 & v2)
print(v1 | v2)
print(v1 - v2)
print(v2 - v1)

练习题

# 从随机的36个数中,抽选7个不重复的数字
from random import randint
ls = []
while len(ls) < 7:
s = randint(1, 36)
if s not in ls:
ls.append(s)
print(ls) from random import randint
s = set()
while len(s) < 7:
s.add(randint(1, 36))
print(s)

python基础【第八篇】的更多相关文章

  1. python基础-第八篇-8.1初识Socket

    socket基础 socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. so ...

  2. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  3. python基础-第六篇-6.2模块

    python之强大,就是因为它其提供的模块全面,模块的知识点不仅多,而且零散---一个字!错综复杂 没办法,二八原则抓重点咯!只要抓住那些以后常用开发的方法就可以了,哪些是常用的?往下看--找答案~ ...

  4. Python基础【第一篇】

     一.Python简介 Python的创始人(Guido von Rossum 荷兰人),Guido希望有一种语言既能像C一样方便地调用操作系统的功能接口,也能像shell脚本一样,轻松地实现编程,A ...

  5. python基础知识第一篇(认识Python)

    开发语言: 高级语言:python java php c++ 生成的字节码 字节码转换为机器码 计算机识别运行 低级语言:C 汇编 生成的机器码 PHP语言:适用于网页,局限性 Python,Java ...

  6. 图解Python 【第八篇】:网络编程-进程、线程和协程

    本节内容一览图: 本章内容: 同步和异步 线程(线程锁.threading.Event.queue 队列.生产者消费者模型.自定义线程池) 进程(数据共享.进程池) 协程 一.同步和异步 你叫我去吃饭 ...

  7. Python基础第三篇

    一.collections系列 Counter是对字典类型的补充,用于追踪值的出现次数,具备字典的所有功能 + 自己的功能 1.计数器Counter import collections a='aba ...

  8. Python 基础【第一篇】环境部署

    一.Windows基础环境配置部署 1.1.下载python安装程序 下载地址:https://www.python.org/ftp/python/3.4.1/python-3.4.1.msi 1.2 ...

  9. [Python笔记]第八篇:模块

    本篇主要内容:python常用模块用法介绍 什么是模块 模块,用一大段代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性 ...

  10. python基础(八种数据类型)

    Python的八种数据类型 八种数据类型分别是: number(数字).string(字符串).Boolean(布尔值).None(空值) list(列表).tuple(元组).dict(字典).se ...

随机推荐

  1. Java迭代器模式

    迭代器模式是Java和.Net编程环境中非常常用的设计模式.此模式用于以顺序方式访问集合对象的元素,而不需要知道其底层表示. 迭代器模式属于行为模式类别. 实现实例 在这个实例中,将创建一个Itera ...

  2. lr 计算字符串长度

    sizeof求后面的内容or表达式所占用的字节数 strlen求字符串的有效长度,只要遇到'\0'就认为字符串结束 字符串转化为int型变量 Action2() { int j = 0; j = at ...

  3. java基础知识-基本概念

    1.1 java语言有哪些优点? 1.java语言为纯面向对象的语言. 2.平台无关性.java语言的优点便是“一次编译,到处执行”.编译后的程序不会被平台所约束,因此java语言有很好的移植性. 3 ...

  4. 重读ORB_SLAM之LoopClosing线程难点

    1. DetectLoop 这里有个ConsistenGroup概念,比较难懂.这里是最让人迷惑的地方.一旦vbConsistentGroup为真,其他帧的spCanditateGroup就进不来了. ...

  5. db2 load命令装载数据时定位错误出现的位置

    使用如下命令装载数据(注意CPU_PARALLELISM 1): db2 load from filename.del of del replace into tab_name  CPU_PARALL ...

  6. 十万级百万级数据量的Excel文件导入并写入数据库

    一.需求分析 最近接到一个需求,导入十万级,甚至可能百万数据量的记录了车辆黑名单的Excel文件,借此机会分析下编码过程; 首先将这个需求拆解,发现有三个比较复杂的问题: 问题一:Excel文件导入后 ...

  7. 看不到但摸得到的捣蛋鬼---Zero Width Space

    看不到但摸得到的捣蛋鬼---Zero Width Space 1.情况如何? 昨天,"某某某"的代码出现了一个bug.大概是这个情况: 有一个提示信息,需要展示,大概这样: 这行文 ...

  8. element UI的使用

    npm install --save element-ui main.js里面添加 import ElementUI from 'element-ui' import 'element-ui/lib/ ...

  9. eclipse导入了jar查看不了源码解决方法

    当导入源码的时候ctrl+左键的时候,还是查看不了源码.问题一直困扰我很久,百度了很多方法.现在分享下解决的方法. 经过简单整理,如下: 第一步:下载JAD . jad官方地址的官方下载地址是: ht ...

  10. JavaSE---main方法解读

    1.概述 1.1 java程序入口:main方法 public static void main(String[] args){} a,public:java类由JVM调用,为了让JVM自由调用mai ...