读写文件是最常见的IO操作,Python内置了读写文件的函数,用法和c是兼容的,Python中有很多模块都支持文件的读写,在未学习其他模块前, 我们先看一些比较基础的方法。
(1)读取文件的路径
本地文件是指向一个本地存储的文件,是一个链接或者一个映射。
#路径书写格式
path1 = 'C:/Users/XXX/Desktop/text.txt' # 单个反斜杠:/
path2 = 'C:\\Users\\XXX\\Desktop\\text.txt' # 两个斜杠:\\(第一个\是转义符)
path3 = r'C:\Users\XXX\Desktop\text.txt' # r用于防止字符转义
个人比较喜欢的是第三种用法,加在路径前加‘r’方便又快捷,三种方法都很nice,看个人喜好啦~
(2)读取文件–open()语句
f = open(path2, 'r')#‘r’为读取文件,‘w’为写入,‘rw’为读取+写入
print(type(f))
print(f)
print(f.read())
print('读取完毕')
# open('路径', '模式', enconding = '编码' )
# 简答的读取方法:.read() → 读取后,光标将会留在读取末尾
print(f.read())
print('读取为空')
# 运行第一次.read()之后,光标位于末尾,再次读取输出为空
f.seek(0)#用 f.seek(0) 来移动光标
print(f.read())
print('第二次读取')
f.close()
# print(f.read()) # 关闭后无法读取
# 关闭文件链接 f.close(),养成一个好习惯
(3)系统模块下的路径操作–os模块
读取文件最常用的模块是os模块,操作非常简单,且效率比较高效。
import os # 导入模块
print(os.name) # 输出字符串指示正在使用的平台。如果是window 则用'nt'表示,对Linux/Unix用户,它是'posix'。
print(os.getcwd()) # 函数得到当前工作目录,即当前Python脚本工作的目录路径。
print(os.listdir()) # 返回指定目录下的所有文件和目录名。
#os.chdir('C:\\Users\\XXX\\Desktop\\' ) # 切换到目标路径,这个方法很重要,后面做数据分析读取文件经常使用
#print(os.getcwd())
#os.remove('text2.txt') # 删除一个文件
print(os.path.split('C:\\Users\\XXX\\Desktop\\text.txt')) # 函数返回一个路径的目录名和文件名
print(os.path.exists('C:\\Users\\XXX\\Desktop\\heheh.txt'))
print(os.path.exists('C:\\Users\\XXX\\Desktop\\'))
# 用来检验给出的路径是否真的存在,这里不存在改文件故False,但路径存在故True
(a)相对路径和绝对路径
os.chdir('C:\\Users\\XXX\\Desktop\\' )#加载工作路径
f2 = open('text.txt','r')
print(f2.read())
# 在申明了目录之后,就可以直接输出文件名了 → 相对路径
这种方法非常简单,我非常喜欢用这种方法。
在读取文件时我们可能只想读取文件中的某一行数据,这个时候我们可以使用
readline()函数,如:f.readline(n),f为文件名,n为要读取的函数,
如:f.readline(5),为读取f文件前5行的数据
读取文件部分暂时就说这些吧,后面学了pandas后会有更多更方便的读取方式
对Python数据分析和数据挖掘有兴趣的小伙伴们可以关注我哦,一个集才气与灵气一身的小白程序媛,每天更新一点点,每天进步一点点~