集合常用操作
# 一、关系运算
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集合是可变类型 文件操作
'''
1、什么是文件
文件是操作系统提供给用户/应用程序操作硬盘的一个虚拟单位/功能 应用程序/用户对文件的读写操作都是在向操作系统发起系统调用
操作系统接收到调用请求后,会将该请求转换成具体的硬盘操作 2、为何要用文件
应用程序操作文件为了将内存中的数据永久保存到硬盘中去 3、如何操作文件
''' # 一:文件的基本操作
# 文件的路径:找到文件的地址
# 绝对路径: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()
												

day08总结的更多相关文章

  1. day08 JSP

    day08 JSP 1. jsp 入门和 jsp 运行原理 2. jsp 语法 2.1 jsp 模板元素:jsp 页面中的 html 内容.它定义了网络基本骨架,即定义了页面结构和外观. 2.2 js ...

  2. day08(字符编码,字符与字节,文件操作)

    一,复习 ''' 类型转换 1.数字类型:int() | bool() | float() 2.str与int: int('10') | int('-10') | int('0') | float(' ...

  3. Python面向对象进阶和socket网络编程-day08

    写在前面 上课第八天,打卡: 为什么坚持?想一想当初: 一.面向对象进阶 - 1.反射补充 - 通过字符串去操作一个对象的属性,称之为反射: - 示例1: class Chinese: def __i ...

  4. day08文件操作的三步骤,基础的读,基础的写,with...open语法,文件的操作模式,文件的操作编码问题,文件的复制,游标操作

    复习 ''' 类型转换 1.数字类型:int() | bool() | float() 2.str与int:int('10') | int('-10') | int('0') | float('-.5 ...

  5. Day08 (黑客成长日记) 命名空间和作用域

    Day08:命名空间和作用域: 1.命名空间: (1)内置命名空间(python解释器): 就是python解释器一旦启动就可以使用的名字储存在内置命名空间中: eg: len() print() a ...

  6. day08(补)

    今日学习内容 1.文件重写方法 2.函数基本知识 文件处理: 打开文件 读/写文件 关闭文件 文件指针移动,只有t模式下的read(n),n代表的字符个数其余都是以字节为单位 f.seek有两个参数( ...

  7. C++Primer笔记-----day08

    ==========================================================================day08===================== ...

  8. day08(异常处理,创建异常,finally,throws和throw的区别)

    异常处理, 异常的产生  运行时异常:程序运行中产生的异常:RuntimeException类.   编译时异常:程序在编译时产生的异常:除了RuntimeException类  其他都是编译时产生的 ...

  9. day08:软件系统的体系结构&Tomcat详解&Web应用&http协议

        day08 软件系统体系结构     常见软件系统体系结构B/S.C/S 1.1 C/S C/S结构即客户端/服务器(Client/Server),例如QQ: 需要编写服务器端程序,以及客户端 ...

  10. python开发学习-day08(socket高级、socketserver、进程、线程)

    s12-20160305-day08 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

随机推荐

  1. neo4j导入csv文件

    neo4j导入csv文件 关于neo4j的安装 官网和网上博客提供了n中安装的方法,这里不再赘述: 普通安装: https://cloud.tencent.com/developer/article/ ...

  2. Spring Security 实战干货:如何实现不同的接口不同的安全策略

    1. 前言 欢迎阅读 Spring Security 实战干货 系列文章 .最近有开发小伙伴提了一个有趣的问题.他正在做一个项目,涉及两种风格,一种是给小程序出接口,安全上使用无状态的JWT Toke ...

  3. PyQt5 模块modules

    The QtCore module contains the core non-GUI functionality. This module is used for working with time ...

  4. webstorm 快捷键 失效问题

    解决方案一:  file->Settings->Keymap->设置为Default 解决方案二:  file->Settings->IdeaVim->取消对勾 重 ...

  5. RabbitMQ系列之【启动过程中遇到问题及解决方案】

    1.如果显示找不到主机,请在hosts文件中添加: vi /etc/hosts 127.0.0.1 localhost 2.从3.3.1版本开始,RabbitMQ默认不允许远程ip登录,即只能使用lo ...

  6. (转)Zookeeper全解析——Paxos作为灵魂

    原计划在介绍完ZK Client之后就着手ZK Server的介绍,但是发现ZK Server所包含的内容实在太多,并不是简简单单一篇Blog就能搞定的.于是决定从基础搞起比较好. 那么ZK Serv ...

  7. Flask 蓝图(Blueprint)使用方式解析

    Flask蓝图提供了模块化管理程序路由的功能,使程序结构清晰.简单易懂.下面分析蓝图的使用方法 假如说我们要为某所学校的每个人建立一份档案,一个很自然的优化方式就是这些档案如果能分类管理,就是说假如分 ...

  8. Quartz.Net系列(二):介绍、简单使用、对比Windows计划任务

    1.介绍 Quartz是功能强大的开源作业调度库,几乎可以集成到任何Java应用程序中-从最小的独立应用程序到最大的电子商务系统.Quartz可用于创建简单或复杂的计划,以执行数以万计,数以万计的工作 ...

  9. 【JMeter_06】JMeter逻辑控制器__If控制器<If Controller>

    If控制器<If Controller> 业务逻辑: 根据表达式的结果来决定是否执行控制器下的脚本内容,与编程语言中的if判断逻辑大致相同,表达式结果为布尔值 true或false; 当表 ...

  10. Java Jar 包加密 -- XJar

    Java Jar 包加密 一.缘由 Java的 Jar包中的.class文件可以通过反汇编得到源码.这样一款应用的安全性就很难得到保证,别人只要得到你的应用,不需花费什么力气,就可以得到源码. 这时候 ...