python中文件的基础操作
打开文件的三种方式:
open(r'E:\学习日记\python\code\文件的简单操作.py')
open('E:\\学习日记\\python\\code\\文件的简单操作.py')
open('E:/学习日记/python/code/文件的简单操作.py')
#字符串前面加一个r代表原生的raw
# rt,wt,at:r读,w、a写,t表示以文本打开
eg:
>>> res = open(r'E:\test.txt','r',encoding='utf-8')
>>> read = res.read()
>>> print(read)
>>> res.close()
123
小米
qwe
asd
#文本形式读取
with open(r'E:\test.txt','rt',encoding='utf-8') as f: #read(1)代表读取一个字符,读取光标往右的内容(默认光标在开头)
data1 = f.read(1)
print(data1)
data2 = f.read(1)
print(data2)
1
2 #readline:按行读取
data1 = f.readline()
data2 = f.readline()
print(data1)
print(data2)
123
小米 #readlines:把内容以列表形式显示
data = f.readlines()
print(data)
['123\n', '小米\n', 'qwe\n', 'asd']
for a in data:
print(a)
123 小米 qwe asd #readable:是否可读(返回布尔类型)
res = f.readable()
print(res)
True
文本形式写
w:覆盖写
a:追加写
with open(r'E:\test.txt','wt',encoding='utf-8') as res:
#write:往文件里覆盖写入内容
res.write('谢谢你的爱1999')
谢谢你的爱1999(test.txt) #writelines:传入可迭代对象变成字符串写入文件
res.writelines(['qw','\n12','3er'])
res.writelines({'name':'小米','age':23})
helloqw
123ernameage with open(r'E:\test.txt','at',encoding='utf-8') as res:
#a模式write写入为追加
res.write('\n456')
helloqw
123ernameage
456 #writable:是否可写
res.writable()
True
rb,wb,ab
bytes类型读
with open(r'E:\test.txt','rb') as res:
a = res.read()
print(a)
b'hello\r\n\xe4\xbd\xa0\xe5\xa5\xbd'
print(a.decode('utf-8'))
hello
你好 # bytes类型写:
#1.字符串前面加b(不支持中文)
# 2.encode
with open(r'E:\test.txt', 'wb') as res:
res.write(b'asd')
asd
res.write('你好'.encode('utf-8'))
你好
光标的移动
with open(r'E:\test.txt', 'wb') as res:
#前面的数字代表移动的字符或字节,后面的数字代表模式(0:光标在开头,1:代表相对位置,2:代表光标在末尾)
res.seek(2,0)
print(res.read())
e
qwertyuiop
res.seek(1,0)
res.seek(2,1)
print(res.read().decode('utf-8'))
qwertyuiop
res.seek(-3,2)
print(res.read().decode('utf-8'))
iop # tail -f /var/log/message | grep '404' #光标的移动用途之一
实例:
编写一个用户登录程序
登录成功显示欢迎页面
登录失败显示密码错误,并显示错误几次
登录三次失败后,退出程序
升级:
可以支持多个用户登录
用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态
user = 'root'
passwd = 'root'
i = 0
print("请登录:")
while True:
new_user = input("请输入用户:")
new_passwd = input("请输入密码:")
if new_user == user and new_passwd == passwd:
print("欢迎光临")
break
else:
print("密码输入错误!")
i +=1
if i == 3:
print("三次输入错误,退出程序")
break
python中文件的基础操作的更多相关文章
- 『无为则无心』Python基础 — 41、Python中文件的读写操作(一)
目录 1.文件操作步骤 2.文件的读写操作 (1)文件的打开 (2)打开文件模式 (3)获取一个文件对象 (4)关于文件路径 1.文件操作步骤 当我们要读取或者写入文件时,我们需要打开文件,在操作完毕 ...
- python 中文件夹的操作
文件有两个管家属性:路径和文件名. 路径指明了文件在磁盘的位置,文件名原点的后面部分称为扩展名(后缀),它指明了文件的类型. 一:文件夹操作 Python中os 模块可以处理文件夹 1,当前工作目录 ...
- Python中文件路径名的操作
1 文件路径名操作 对于文件路径名的操作在编程中是必不可少的,比如说,有时候要列举一个路径下的文件,那么首先就要获取一个路径,再就是路径名的一个拼接问题,通过字符串的拼接就可以得到一个路径名.Pyth ...
- 『无为则无心』Python基础 — 42、Python中文件的读写操作(二)
目录 (5)文件对象方法(重点) 1)写方法 2)读方法 3)seek()方法 4)tell()方法 (6)关闭 (7)综合练习:读取大文件 (5)文件对象方法(重点) 1)写方法 @1.语法 对象对 ...
- Python中文件的读写操作的几种方法
对文件的操作,步骤为:打开一个文件-->读取/写入内容-->保存文件 文件读写的3中模式 # 1.w 写模式,它是不能读的,如果用w模式打开一个已经存在的文件,会清空以前的文件内容,重新写 ...
- Python中文件的读写操作
文件操作基本流程: 1. 介绍 计算机系统是由计算机硬件,操作系统,和应用程序三部分组成. 内存 存放不持久 硬盘 可以使数据持久化 文件操作 数据持久化的一种 全栈开发 框架类 2. 文件的操作 ...
- python中字典的基础操作
dict1 = { 'name':'王麻子', 'age':25, 'phone':12580, 'high':160 } dict2 = { 'name':'张三', 'age':38, 'phon ...
- python 关于文件夹的操作
在python中,文件夹的操作主要是利用os模块来实现的, 其中关于文件夹的方法为:os.lister() , os.path.join() , os.path.isdir() # path 表示文 ...
- python 中文件输入输出及os模块对文件系统的操作
整理了一下python 中文件的输入输出及主要介绍一些os模块中对文件系统的操作. 文件输入输出 1.内建函数open(file_name,文件打开模式,通用换行符支持),打开文件返回文件对象. 2. ...
随机推荐
- 本人亲测-SSM环境搭建(使用eclipse作为示例,过程挺全的,可作为参考)
本人亲测-SSM环境搭建(使用eclipse作为示例,过程挺全的,可作为参考) 本人亲测-SSM环境搭建(使用eclipse作为示例,过程挺全的,可作为参考) 本人亲测-SSM环境搭建(使用eclip ...
- django rest framework1
内容回顾: 1.开发模式 - 普通开发方式(前后端放在一起写) - 前后端分离 2.后端开发 为前端提供URL(API/接口的开发) 注:永远返回HttpResponse 3.Django FBV.C ...
- MakeDownPad2基本使用
一.安装 1.1.MakeDownPad2下载安装 MakeDownPad2从官网下载安装包直接安装即可 1.2.依赖安装 MakeDownPad2支持html代码,如果要使用预览功能就需要安装awe ...
- 关于a标签的href属性
今天有人问起我a标签的href属性值为 # 与 JavaScript:void(0) 有啥区别,想来也没啥可说,就简单说两句 a标签的href属性,优点有: 天然鼠标手型,以及可以被键盘focus以及 ...
- 学习Spring的思考框架
引子 很早之前听同事说:“要开会了.我都知道领导要问什么,就那几板斧.”其实领导之所以为领导,人家问的问题确实很合情合理,甚至可以说一针见血.而之所以能问出来这些合理的问题,就是因为头脑中有自己的思考 ...
- 百万年薪python之路 -- 并发编程之 多线程 一
多线程 1.进程: 生产者消费者模型 一种编程思想,模型,设计模式,理论等等,都是交给你一种编程的方法,以后遇到类似的情况,套用即可 生产者与消费者模型的三要素: 生产者:产生数据的 消费者:接收数据 ...
- 关于到美国学习cs的亲身感受,希望对你们有所帮助
1.能否向各位寄托天下的朋友们简单介绍一下你自己?比如你国内的学校(或者什么档次),哪年申请出国的,什么专业,硕士还是博士,在美国的学校(或者什么档次),以及留学经历(毕业时间),现在状态(学生?博后 ...
- 彻底解决 Mechanism level: Failed to find any Kerberos tgt
错误描述 Secure Client Cannot Connect ([Caused by GSSException: No valid credentials provided(Mechanism ...
- PHP Windows下使用Memcached扩展
github上发现了一个很好用的小文件,能够 模拟出php_memcached.dll的PHP memcached扩展. PHP memcached client 已知PCEL有两个memcache ...
- R语言之脸谱图
脸谱图和星图类似,但它却比星图可以表示更多的数据维度.用脸谱来分析多维度数据,即将P个维度的数据用人脸部位的形状或大小来表征.脸谱图在平面上能够形象的表示多维度数据并给人以直观的印象,可帮助使用者形象 ...