(1)打开文件

f = open(‘文件路径’,mode=‘a+’)

  • w:只能写入并清空文件内容
  • a:只能写入不清空内容
  • r:只能读取文件
  • w+:读写,并清空内容
  • a+:读写,在文件末尾追加
  • r+:读写,在文件开头追加

(2)文件操作信息

f.write(‘gfdsfd\n’)
seek(offset,from) :offset偏移量,from方向
0:表示文件开头
1:表示当前位置
2:表示文件末尾

(3)关闭文件

  • f.close()
文件使用完毕后必须关闭,因为文件对象会占用系统资源,并且操作系统同一时间能打开的最大文件数是有限的。
  • python中的with语句使用于对资源进行访问的场合,保证不管处理过程中是否发生异常机制都会执行自动的清理操作,对访问的资源进行释放。
with open('doc.txt',mode='w+') as f:
    f.write('jk\n')
    f.seek(0,0)   ##在写入的时候指针已经移动到文末了,所以读取的时候,需要将指针调取到文章开头。如果不添加这一步,则读取不出什么。
    print(f.read())

运行结果:

3 python 文件操作 python 对文件操作_3 python 文件操作

(4)OS模块

处理操作系统相关的功能,可跨平台。

import os
import platform    ###获取主机操作系统详细信息,windows系统使用platform模块,如果是linux,直接使用os模块
print(os.name)    ##打印主机操作系统(nt指windows)
try:
    name = os.uname()  ##获取主机内核信息
except Exception:
    name = platform.uname()

print(name)

运行结果:

3 python 文件操作 python 对文件操作_python_02

(5)获取系统环境变量

import os
env = os.environ
print(env)

运行结果:

3 python 文件操作 python 对文件操作_3 python 文件操作_03

(6)json模块

一种轻量级的数据交换模式。

python对象----encode(dump,dumps)—>json字符串

import json
user1 = {'name':'westos','age':78,'city':'xian'}
json_str = json.dumps(user1)    ###对python数据结构进行转化成json字符串
print(json_str,type(json_str))

运行结果:

3 python 文件操作 python 对文件操作_json_04


将python字符串转换成json字符串,并保存至打开的文件f中:

import json
user1 = {'name':'westos','age':78,'city':'xian'}
with open('doc.txt','w+') as f:
    json.dump(user1,f)    ##对进行转换并存储
    print('存储成功')

运行结果:

3 python 文件操作 python 对文件操作_json字符串_05


3 python 文件操作 python 对文件操作_python_06

  • 中文存储需要设定:ensure_ascii=False
  • 首行缩进四个空格:indent=4
import json
user1 = ['vcd','json','西安']
with open('doc.txt','w+') as f:
    json.dump(user1,f,ensure_ascii=False,indent=4)
    print('存储成功')

运行结果:

3 python 文件操作 python 对文件操作_json字符串_07


json字符串----decode(load,loads)—>python对象

import json
with open('doc.txt') as f:
    python_str = json.load(f) 
    print(python_str,type(python_str))

运行结果:

3 python 文件操作 python 对文件操作_3 python 文件操作_08