Python之路Day06
小数据池
== 判断两个值是否相等
is -- 是,判断两边的内存地址是否相同
a=10
b=10
print(a is b)
id() -- 查看内存地址
代码块
一个py文件,一个函数,一个模块,终端中每一行都是代码块
int,str,bool
int: -5~正无穷
a=1000
b=1000
print(id(a),id(b))
print(a,b)
str:
- 定义字符串的时候可以任意,
- 字符串(字母,数字)作乘法时字符串长度不能超过20
- python3.7以上版本为<=4096
- 特殊符号(中文,符号)进行乘法时只能乘1或者乘0
bool
- True
- False
小数据池与代码块同在的情况下先执行代码块
驻留机制:节省内存空间,提升效率(减少了开辟空间和销毁空间的耗时)
小数据池
- int,str,bool
- int:-5~256
- str:
- 只支持字母,数字;长度任意符合驻留机制
- 字符串进行乘法时总长度不能超过20
- 特殊符号进行乘法时只能乘0
深浅拷贝
- 以后尽量避免
- 面试必问
赋值
a=[1,2,3,4]
b=a
print(id(a),id(b))
浅拷贝
赋值:将多个变量名指向同一个内存地址
copy -- 拷贝
(壳是另开的,馕是一样的)
a=[1,2,3,4,5]
b=a.copy()
print(id(a[0]))
print(id(b[0]))
a=[1,2,3,4,5]
b=a[:] #切片 浅拷贝
print(id(a[-1][0]))
print(id(b[-1])[0])
a=[1,2,3,[4,5]]
b=a[:]
浅拷贝
- 只拷贝第一层元素的地址,修改时只有修改第一层的时候源数据不进行改变
- 给可变数据类型添加的时候源数据会受影响
- 可变数据类型可以修改添加,不可变类型只能修改
深拷贝
import copy -- 导入copy模块
import copy
a=[1,2,3,[4,5],6]
b=copy.deepcopy(a)
深拷贝:不可变数据类型共用,可变数据类型新开辟一个空间(无论一方怎么改,另一方都不会改变)
集合
- Python中数据类型之一,无序,可变,天然去重
- 集合 -- set
s=set()
:空集合- 集合就是一个没有值的字典(元素唯一,不可变)
集合方法
增加
- s.add()
- s,update(‘alex) -- 迭代添加
- print(set('alex')) -- 迭代添加
删除
- s.remove() -- 通过元素删除
- s.clear() -- 清空
- s.pop() -- 随机删除(最小的)
改
- 先删后加
查
- for循环
其他操作
- 减法:差集
- &:交集
- |(管道符):并集
- ^:反交集
>:判断是否子集
print(frozenset({1,2,3,4}))
冻结集合(使集合不可变)
Python之路Day06的更多相关文章
- 初学python之路-day06
每天一篇总结,今天学习了大概有深浅拷贝,元组类型,字典类型与集合类型.第一次感觉有点难度,需要花费多点时间来掌握. 深浅拷贝,分为值拷贝.浅拷贝.深拷贝. ls = [1, 'abc', [10]] ...
- Python之路【第一篇】python基础
一.python开发 1.开发: 1)高级语言:python .Java .PHP. C# Go ruby c++ ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...
- Python之路
Python学习之路 第一天 Python之路,Day1 - Python基础1介绍.基本语法.流程控制 第一天作业第二天 Python之路,Day2 - Pytho ...
- python之路 目录
目录 python python_基础总结1 python由来 字符编码 注释 pyc文件 python变量 导入模块 获取用户输入 流程控制if while python 基础2 编码转换 pych ...
- Python之路【第十九篇】:爬虫
Python之路[第十九篇]:爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用 ...
- Python之路【第十八篇】:Web框架们
Python之路[第十八篇]:Web框架们 Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Pytho ...
- Python之路【第十七篇】:Django【进阶篇 】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
- Python之路【第十六篇】:Django【基础篇】
Python之路[第十六篇]:Django[基础篇] Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...
- Python之路【第十五篇】:Web框架
Python之路[第十五篇]:Web框架 Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 1 2 3 4 5 6 ...
随机推荐
- pytest文档32-allure描述用例详细讲解
前言 pytest+allure是最完美的结合了,关于allure的使用,本篇做一个总结. allure报告可以很多详细的信息描述测试用例,包括epic.feature.story.title.iss ...
- P5016 龙虎斗
链接:P5016 ------------------------------------ 作为2019年的模拟,还是有必要写一些的 --------------------------------- ...
- 纪中12日T1 2307. 选择
2307. 选择 (File IO): input:choose.in output:choose.out 时间限制: 1000 ms 空间限制: 262144 KB 具体限制 Goto Pr ...
- js阻止事件冒泡(phpcms,浮窗第一次10秒弹出后每30秒弹出,动态更换日期)
/* v9_date_list 日期表 tiptime 考试日期(数据类型为日期) 如果要实现浮窗淡入淡出用jquery的("#main0").fadeIn(3500);淡出(&q ...
- C# sqlite 事务提交多个语句,提升插入速度
private SQLiteConnection connection; private SQLiteCommand command; private SQLiteTransaction transa ...
- 使用这7个隐藏技巧让您的Mac更易于阅读和使用!
macOS Mojave(10.15)可以说是苹果公司功能最强大,功能最强大的现代Mac软件更新版.它带来了一系列新功能,安全和隐私控制,稳定性增强以及Dark Mode主题! 它也代表了最易于使用的 ...
- Linux的语系的修改
1. 显示目前所支持的语系 [root@test ~]# echo $LANG 2. 修改语系成为英文语系 字体集目录:"/etc/sysconfig/i18n",编辑该文件,将字 ...
- Android中的内存管理机制以及正确的使用方式
概述 从操作系统的角度来说,内存就是一块数据存储区域,属于可被操作系统调度的资源.现代多任务(进程)的操作系统中,内存管理尤为重要,操作系统需要为每一个进程合理的分配内存资源,所以可以从两方面来理解操 ...
- jQuery中校验时间格式的正则表达式小结
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- from selenium.webdriver.chrome.options import Options中add_argument 常用参数表收集
chrome_options.add_argument("xxx") 序号 参数 说明 1 --allow-outdated-plugins 不停用过期的插件. 2 --allow ...