十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
文本文件的处理
专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!成都创新互联公司为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,成都网站制作、做网站负责任的成都网站制作公司!
打开文件
函数:open(filename,mode)
filename => 访问的文件
mode => 访问模式
常见模式 作用
r 只读
r+ 读写
w 只写 文件存在则覆盖,不存在则创建
w+ 只写 文件存在则覆盖,不存在则创建
a 追加 文件存在追加到已有内容后
rb 读写
wb 读写
ab 追加和读
读
比如我在这里先编辑了一个1.txt
然后写一个脚本来读取它
file=open('1.txt','r')
print(file.readline())
why??
为什么只显示一行
read 读取整个文件,每次读取整个文件,它通常将读取到底文件内容放到一个字符串变量中,也就是说内容是一个字符串类型。
readline 读取下一行,每只读取文件的一行,通常也是读取到的一行内容放到一个字符串变量中,返回str类型。
readlines 读取整个文件到一个迭代器以供我们遍历,每次按行读取整个文件内容,将读取到的内容放到一个列表中,返回list类型。]
O~
这下就明白了,所以咱们使用read()
使用readlines()的情况
其实它也是可以像read()一样输出
比如:
那么这里我也就不多举例了哈,有兴趣的可以自己动手研究一下~
当然,还有另一种表示的方法
比如:
with open('1.txt','r') as f:
print(f.readlines())
写
#coding:utf-8
file=open('1.txt','w')
file.write('Are You Ok?')
file.close()
可以看到1.txt已经变成了刚刚写入的内容
追加
可以发现,刚刚咱们写的都已经被覆盖了。所以咱们得使用到a这个模式追加
1.txt变为了郑州妇科医院 http://www.120zzkd.com/
这里咱们没有换行,加个换行符\n就可以了
常见读写类型的区别
r只读,r+读写,若文件不存在会报错并不会创建新文件
w,只写,文件不存在会创建新文件,w+读写,文件不存在会创建新文件,两种方法使用的时候都会将文件内容先清零。
a,a+同样会创建新文件
文件夹的处理和操作
os模块提供了一个操作系统接口函数,通过os模块可以对系统中的文件,目录等进行操作
os.mkdir
os.rmdir
os.path.exits(‘C:/’)
os.rename(‘1.txt’,‘1.py’)
os.remove(‘1.py’)
os.getcwd()
一个例子
#coding:utf-8
import base64
import sys
'''
加密脚本
用法:python base64encode.py 需要加密的文本 加密后的文本
'''
with open(sys.argv[1],'rb') as file1:
list = [base64.b64encode(i) for i in file1]
'''
for i in file1:
list.append(base64.b64encode(i))
'''
with open(sys.argv[2],'wb') as file2:
for line in list:
''' 逐行读取'''
file2.write(line+b'\n')
file2.close()
print('success!')