自学python之路(day5)
一、文件操作
1. 只读
1) r
以str形式
f = open('d:\文件操作.txt',mode='r',encoding='utf-8') # r是默认的
content=f.read()
print(content,type(content))
f.close()
2) rb
#b 表示以bytes形式(bytes类型是以字节为单位处理的,非文字文件上传下载)
f = open('d:\文件操作.txt',mode='rb')
content=f.read()
print(content)
f.close()
2. 只写
# 没有文件就创建文件去写,有源文件将源文件内容覆盖
1) w
#str形式
f = open('log',mode='w',encoding='utf-8')
f.write('恢复')
f.close()
2) wb
#以bytes形式(bytes类型是以字节为单位处理的,非文字文件上传下载)
f = open('log',mode='wb')
f.write('粉红色'.encode('utf-8'))
f.close()
3. 追加
1) a
f = open('log',mode='a',encoding='utf-8')
f.write('哈喽')
f.close()
2) ab
f = open('log',mode='ab',) # b 表示以bytes形式(bytes类型是以字节为单位处理的,非文字文件上传下载)
f.write('哈喽哈喽'.encode('utf-8'))
f.close()
4. 先读后写
1) r+
最常用
f = open('log',mode='r+',encoding='utf-8')
print(f.read())
f.write('哈喽哈喽')
f.close()
2) r+b 以bytes的形式
f = open('log',mode='r+b')
print(f.read())
f.write('哈喽哈喽'.encode('utf-8'))
f.close()
5. 先写后读
1) w+
先把原内容清除,再去写
f = open('log',mode='w+',encoding='utf-8')
f.write('哈喽哈喽')
f.seek(0) #读光标
print(f.read())
f.close()
2) w+b
以bytes的形式(bytes类型是以字节为单位处理的)
f = open('log',mode='w+b')
f.write('哈喽哈喽'.encode('utf-8'))
f.seek(0)
print(f.read())
f.close()
6. 追加后读
1) a+
f = open('log',mode='a+',encoding='utf-8')
f.write('哈喽哈喽')
f.seek(0) #读光标
print(f.read())
f.close()
2) a+b
f = open('log',mode='a+b')
f.write('哈喽哈喽'.encode('utf-8'))
f.seek(0) #读光标
print(f.read())
f.close()
二、练习题
用户登录,三次机会
username=input('请输入用户名:')
password=input('请输入密码:')
info_list=[]
with open('user_info',mode='w',encoding='utf-8') as f:
f.write('{}\n{}'.format(username,password))
i=0
while i<3:
usn=input('请输入用户名:')
pwd=input('请输入密码:')
with open('user_info',mode='r+',encoding='utf-8') as f1:
for info in f1:
info_list.append(info)
if usn == info_list[0].strip() and pwd == info_list[1].strip():
print('登陆成功!')
break
else:
print('账号或密码错误!')
i+=1
自学python之路(day5)的更多相关文章
- 自学Python之路
自学Python之路[第一回]:初识Python 1.1 自学Python1.1-简介 1.2 自学Python1.2-环境的搭建:Pycharm及python安装详细教程 1.3 ...
- 自学Python之路-Python核心编程
自学Python之路-Python核心编程 自学Python之路[第六回]:Python模块 6.1 自学Python6.1-模块简介 6.2 自学Python6.2-类.模块.包 ...
- 自学Python之路-Python基础+模块+面向对象+函数
自学Python之路-Python基础+模块+面向对象+函数 自学Python之路[第一回]:初识Python 1.1 自学Python1.1-简介 1.2 自学Python1.2-环境的 ...
- 自学Python之路-django
自学Python之路-django 自学Python之路[第一回]:1.11.2 1.3
- 自学Python之路-Python并发编程+数据库+前端
自学Python之路-Python并发编程+数据库+前端 自学Python之路[第一回]:1.11.2 1.3
- 自学Python之路-Python网络编程
自学Python之路-Python网络编程 自学Python之路[第一回]:1.11.2 1.3
- NO.3:自学python之路------集合、文件操作、函数
引言 本来计划每周完成一篇Python的自学博客,由于上一篇到这一篇遇到了过年.开学等杂事,导致托更到现在.现在又是一个新的学期,春天也越来越近了(冷到感冒).好了,闲话就说这么多.开始本周的自学Py ...
- NO.1:自学python之路------Hello world、判断、循环
引言 人工智能如今越来越贴近生活,在这里将记录我自学python与tensorflow的过程.编程使用IDE:visual studio 2017,python版本3.6.4,tensorflow版本 ...
- Python之路Day5
一.时间复杂度 (1)时间频度: 一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费的时间就多.一个算法中的语句执行次数称为语句频度或时间频度,记为T(n). (2)时 ...
随机推荐
- 403 Access Denied :进入Tomcat的manager时拒绝访问
解决办法: https://blog.csdn.net/Hello_World_QWP/article/details/79581174
- discuzX3.4安装之后,没有任何样式怎么办?
问题:最近在做论坛,想着直接用现成的论坛,但是在安装完成之后,竟然一点样式的都没有,如图: 解决方案: 登录后台->工具->更新缓存
- spring cloud(五)熔断监控Hystrix Dashboard和Turbine
Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间, 请求成功率等数 ...
- requests库/爬取zhihu表情包
先学了requests库的一些基本操作,简单的爬了一下. 用到了requests.get()方法,就是以GET方式请求网页,得到一个Response对象.不加headers的话可能会400error所 ...
- url路由配置以及渲染方式
路由分配及模板渲染 路由系统 urlpatterns = [ path('admin/', admin.site.urls), path('teacher/',include('teacher.url ...
- php单点登录
http://blog.csdn.net/luyaran/article/details/54890036
- win10安装配置nodejs
下载node 官网下载node 接下来在命令提示符里(win+R)输入node -v和npm -v,如图所示,表示安装完成. 测试, 配置node 在nodejs文件目录下,新建文件夹node ...
- 八大排序算法详解(动图演示 思路分析 实例代码java 复杂度分析 适用场景)
一.分类 1.内部排序和外部排序 内部排序:待排序记录存放在计算机随机存储器中(说简单点,就是内存)进行的排序过程. 外部排序:待排序记录的数量很大,以致于内存不能一次容纳全部记录,所以在排序过程中需 ...
- Tensorflow(添加噪声的方式)
在去噪自编码器中,模型的输入是原始的输入经过某种形式的加噪过程后的衰弱的形式,所以加噪声一般分为:加高斯白噪声,掩模噪声,椒盐噪声. 1.加性高斯噪声 self.scale = tf,placehol ...
- python学习------模块
模块(modue)的概念 在计算机程序开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件 ...