集合

关系运算

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. 2021-2027年中国玩具行业市场研究及前瞻分析报告
  2. 打开excel发送错误报告
  3. html视频海报代码,如何在网站头部添加视频海报?添加视频海报的方法(代码示例)...
  4. Intel Realsense pyrealsense rs.decimation_filter()类(通过使用具有特定内核大小的中值执行下采样)(抽取过滤器/抽取滤波器)
  5. 老男孩python全栈开发视频教程_老男孩Python全栈开发(92天全)视频教程 自学笔记16...
  6. .NET Core 如何调试 CPU 爆高?
  7. java版spring cloud+spring boot 社交电子商务平台:服务消费(基础)
  8. 【elasticsearch系列】windows安装IK分词器插件
  9. 够狠 | 单点登录三种方式,够狠!够劲爆!
  10. Maven多模块项目搭建
  11. 阶段2 JavaWeb+黑马旅游网_15-Maven基础_第5节 使用骨架创建maven的java工程_10idea集成maven插件...
  12. Mybatis高级映射一对一查询
  13. Zemax操作24--高斯光束的聚焦和传播
  14. 做了一个收录 rss opml 文件的仓库,欢迎推荐 opml
  15. 叛乱2 linux服务器,叛乱沙漠风暴怎么开服?开服操作指南详解
  16. 计算机网络试卷华师,2020华师网上考试参考答案计算机网络A-81111005.docx
  17. 信息系统项目管理师真题2017下半年附答案解析(1)
  18. 微分: 全微分定义、偏导数、梯度
  19. 计算机应用基全部概念,《计算机应用基课程教学大纲.doc
  20. Java编写 输入一个字符串,请编写一个函数统计连续相同字符及其数量。例如,输入“aabbbbcccAB”,返回“a2b4c3 A1 B1”及5;

热门文章

  1. 多线程访问独立空间全局变量
  2. matlab的sparse,matlab的
  3. Ubuntu 18.04安装英特尔Optane DC Persistent Memory Module配置工具ipmctl
  4. 三角函数 - 倍角公式
  5. Python +Echarts +PyQt5设计股票期货自动交易系统 二、软件界面响应(二)
  6. 4列的计算机代码,干货 | 10分钟带你彻底了解column generation(列生成)算法的原理附java代码...
  7. 使用SIM4LIFE light对人体电磁场仿真过程1
  8. 数据采集+数据可视化练习(2022-1-6)
  9. 智慧工地人员定位系统,安全生产重要监管渠道
  10. XSS基础原理(Cross-site scripting)