集合

关系运算

firends1 = {"zero", "kevin", "jason", "egon"}
firends2 = {"jy", "ricky", "jason", "egon"}# 1、取二者的共同好友:交集
res = firends1 & firends2
print(res)# 2、取二者所有的好有有哪些:并集
res=firends1 | firends2
print(res)# 3、取第一个人独有的好友:差集
res=firends1 - firends2
print(res)res=firends2 - firends1
print(res)# 4、求两个用户独有的好友们(即去掉共有的好友):对称差集/交叉补集
res1=firends1 - firends2
res2=firends2 - firends1
print(res1 | res2)# print(firends1 ^ firends2)# 5、父子集:一个集合包含另外一个集合,他们才有父子集的关系
s1 = {1, 2, 3}
s2 = {3, 4, 5}# print(s1 > s2) # False
print(s1 < s2) # False
print(s1 == s2) # False# 集合1>集合2 结果True时,意味着集合1内的元素完全包含了集合2
s1={1,2,3}
s2={1,2}
#
print(s1 > s2) # 结果True,代表s1是s2的父集
print(s2 < s1) # 结果True,代表s2是s1的子集# s1 = {1, 2, 3}
s2 = {3, 2, 1}
print(s1 == s2)

常用操作与内置方法

# s1 = {3, 2, 1}
# for item in s1:
#     print(item)s1 = {3333, "aaa", 222, "bbb", 111}
# 1、s1.update()
# print(id(s1))
# s1.update({3,4,5})
# print(s1)
# print(id(s1))# 2、s1.clear()# 3、s1.pop()
# res=s1.pop() # 随机删除,把蛋取走
# print(s1)
# print(res)# 4、s1.remove() # 只是删除,捏碎了
# s1 = {3333, "aaa", 222, "bbb", 111}
# res = s1.remove(3333)
# print(s1)
# print(res)# 5、s1.discard() # 与s1.remove一样都是指定元素删除,不一样的是???
# s1 = {3333, "aaa", 222, "bbb", 111}
# res=s1.discard(3333)
# print(s1)
# print(res)# 不一样的地方:当删除的元素不存在时,s1.discard不会报错
# s1.discard(555555)
# s1.remove(555555) # 指定元素不存在则报错# s1.add()
# s1 = {3333, "aaa", 222, "bbb", 111}
# s1.add(555555555)
# print(s1)# s1.isdisjoint(s2) # 如果s1与s2没有共同的元素则返回True
# s1={1,2,3}
# s2={4,5}
# print(s1.isdisjoint(s2))
总结集合set:
存多个值
无序
set集合是可变类型

文件操作

什么是文件

文件是操作系统提供给用户/应用程序操作硬盘的一个虚拟单位/功能
应用程序/用户对文件的读写操作都是在向操作系统发起系统调用
操作系统接收到调用请求后,会将该请求转换成具体的硬盘操作

为何要用文件

应用程序操作文件为了将内存中的数据永久保存到硬盘中去

如何操作文件

一:文件的基本操作

文件的路径:找到文件的地址
绝对路径:r'C:\a\b\c\new.txt'
相对路径:相对于当前程序所在文件夹往后找,r"aaa/a.txt"
# f = open(r"aaa/a.txt", mode='rt', encoding='utf-8')
#
# data=f.read()
# print(data)
#
# f.close() # 释放操作系统资源

二:文件模式

2.1 控制文件读写内容的模式(不能单独使用,必须与rwa结合使用)
t:(默认的)1、读写内容都是以字符串为单位2、只适用于文本文件3、必须指定encoding参数
b:1、读写内容都是以bytes为单位2、适用于所有文件3、一定不能指定encoding参数
2.2 控制文件读写操作的模式
r:(默认的)1、只读模式2、当文件不存在时则报错3、当文件存在时文件指针跳到文件开头f = open('b.txt', mode='rt', encoding='utf-8')data = f.read()print(data)f.close()w:1、只写模式2、当文件不存在会创建一个空文件,然后文件指针跳到文件开头3、当文件存在时文件内容会被清空,然后文件指针跳到文件开头
f = open('c.txt', mode='wt', encoding='utf-8')
# name = input('>>: ')
# f.write(name)
# f.write("egon\n")
# f.write("张三\n")
# f.write("李四\n")# f.write("王五\n")
# f.write("赵铁蛋\n")
# f.write("张全蛋\n")
f.close()# a:
#  1、只追加模式
#  2、当文件不存在会创建一个空文件,然后文件指针跳到文件末尾
#  3、当文件存在时文件内容不会被清空,文件指针跳到文件末尾
# f = open('d.txt',mode='at',encoding='utf-8')
# f.write('aaa\n')
# f.write('bbb\n')
# f.write('ccc\n')
# f.close()

w与a模式的相同点

在文件打开了没有被关闭的情况下,连续的写入,新写入的内容总是跟在老内容之后w与a模式的不同点
在文件关闭了重新打开的情况下,a模式永远把文件指针放到文件末尾
# 案例一:编写一个用户注册功能,注册的内容是账号名和名
name = input("请输入您的账号>>:").strip()
pwd = input("请输入您的密码>>:").strip()
# 账号密码合法性校验
f=open('db.txt',mode='at',encoding='utf8')
f.write("%s:%s\n" %(name,pwd))
f.close()# 案例二:编写一个用户验证功能,账号密码来自于文件
inp_name = input("请输入您的账号>>:").strip()
in_pwd = input("请输入您的密码>>:").strip()# 打开文件,读取账号密码与用户输入的账号密码进行比对
f = open('db.txt', mode='rt', encoding='utf-8')
for line in f:# print(line) # "egon:123\n"name, pwd = line.strip("\n").split(':')if inp_name == name and in_pwd == pwd:print('登录成功')break
else:print('账号密码输入错误')f.close()

python总结day08相关推荐

  1. Python基础day08 作业解析【7道 面向对象题目】

    视频.源码.课件.软件.笔记:超全面Python基础入门教程[十天课程]博客笔记汇总表[黑马程序员] Python基础day08[面向对象(类.对象.属性).魔方方法(init.str.del.rep ...

  2. Python学习Day08

    Python学习Day08 字符串 II 判断和检测 startswith(prefix[,start[,end]]):用于判断参数所指定的字符串是否出现在字符串的起始位置 endswith(pref ...

  3. 轩小陌的Python笔记-day08 模块一总结

    day08 阶段总结和考试题 课程目标:对第一模块 "Python基础" 阶段的知识点进行总结,更好地掌握此模块的相关知识. 课程概要: 代码规范 知识补充 阶段总结(思维导图) ...

  4. Python基础day08【面向对象(类、对象、属性)、魔方方法(init、str、del、repr)】

    视频.源码.课件.软件.笔记:超全面Python基础入门教程[十天课程]博客笔记汇总表[黑马程序员]   目录 0.复习 1.类外部添加和获取对象属性 2.类内部操作属性 3.魔法方法 3.1.__i ...

  5. Python 字符串day08

    字符串是最 Python 总常用的数据类型.我们可以使用引号来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hello World!' var2 = "P ...

  6. python基础day-08:字符串

    文章目录 字符串 一.什么是字符串 二.字符 2.1 普通字符 2.2 转义字符 2.2.1 常见转义 2.2.2 字符编码 ASCII Unicode chr(编码值) ord(字符) 三.获取字符 ...

  7. Python菜鸟入门:day08函数概念

    写在前面: 此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 传送门: day01基础知识 day02知识分类 day03 ...

  8. 超全面Python基础入门教程【十天课程】博客笔记汇总表

    目录 1.学习地址 2.下载地址[视频.源码.课件.软件] 3.详细博客笔记 Day 01 Day 02 Day 03 Day 04 Day 05 Day 06 Day 07 Day 08 Day 0 ...

  9. Linux:python数据库(mysql),多线程以及套接子(socket)

    一·数据库(mysql) 什么是MySQLdb? MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上 ...

最新文章

  1. 关于 TStringList.Assign - 回复 u9cm 的问题
  2. [RabbitMQ+Python入门经典] 兔子和兔子窝
  3. 请谈下Android消息机制,复习指南
  4. 开始 Scrum 3: Values of Scrum
  5. 程序员月薪2万怎么了?8千又怎么了?
  6. 移动端前端月历日历_前端基础:必须要知道的移动端适配(2)——分辨率
  7. 面向对象设计模式纵横谈:Prototype 原型模式(笔记记录)
  8. 利用单壁路由实现vlan间路由
  9. HDU 5980 2016ICPC大连 J: Find Small A
  10. 使用Scrapy,帮你快速抓取网页数据(代码可下载)!
  11. [9018_1563][bzoj_2144]跳跳棋
  12. Caffe for Python 官方教程(翻译)
  13. python--反射机制
  14. python怎么用matplotlib_python-无法在我的程序中使用matplotlib函数
  15. 修复谷歌浏览器翻译插件无法使用的问题
  16. Edge浏览器支持IE内核 / 增加Edge兼容性
  17. RFID在图书馆系统管理中的有哪些应用优势?
  18. 集成学习-Task2 机器学习基础模型回顾
  19. mysql-5.7.16安装教程_mysql installer community 5.7.16安装详细教程
  20. js中text方法是啥意识_JS中Text节点总结

热门文章

  1. linu下python3安装
  2. 儿童python教程书-Python入门基础教程(儿童版) [分享一本入门级教程]
  3. Proteus的串口通信仿真实例(八路数据采集系统)
  4. 黑客盯上了Google相册漏洞
  5. HbuilderX中 真机调试 Android IOS
  6. Python代码制作桌面截图程序
  7. Scratch画六边形
  8. 数据结构单链表实现班级考勤管理系统
  9. 8. UML中类的有三种,下面哪个不是其中之一()
  10. 社群运营有哪些需要注意的地方?