028-030文件及文件系统
文件交互:输入-->运算-->输出
养成随时保存文件的习惯Ctrl+S:.exe/.txt/.ppt/.jpg/.mp4/.avi
打开模式:
文件对象方法
f = open('D:\\record.txt', 'rt') f = open('D:\\record.txt', 'r') f = open('D:\\record.txt') f.read() f.read() f.close() f = open('D:\\record.txt') f.read(10) f.tell() f.seek(45, 0) f.readline() list(f) f.seek(0, 0)lines = list(f) #不写此句调用效率更高 for each_line in lines: print(each_line)f.seek(0, 0)f = open('D:/test.txt', 'w') f.write('我爱鱼C工作室') f.close() #产生一个新文档
文本编辑
f = open('record.txt')boy = [] girl = [] count = 1for each_line in f:if each_line[:6] != '======':(role, line_spoken) = each_line.split(':', 1) #进行字符串的分割操作if role == '小甲鱼':boy.append(line_spoken)if role == '小客服':girl.append(line_spoken)else:file_name_boy = 'boy_' + str(count) + '.txt' #进行文本的保存操作file_name_girl = 'girl_' + str(count) + '.txt'boy_file = open(file_name_boy, 'w')girl_file = open(file_name_girl, 'w')boy_file.writelines(boy)girl_file.writelines(girl)boy_file.close()girl_file.close()boy = []girl = []count += 1file_name_boy = 'boy_' + str(count) + '.txt' file_name_girl = 'girl_' + str(count) + '.txt'boy_file = open(file_name_boy, 'w') girl_file = open(file_name_girl, 'w')boy_file.writelines(boy) girl_file.writelines(girl)boy_file.close() girl_file.close()f.close()def save_file(boy, girl, count):file_name_boy = 'boy_' + str(count) + '.txt'file_name_girl = 'girl_' + str(count) + '.txt'boy_file = open(file_name_boy, 'w')girl_file = open(file_name_girl, 'w')boy_file.writelines(boy)girl_file.writelines(girl)boy_file.close()girl_file.close()def split_file(file_name):f = open('record.txt')boy = []girl = []count = 1for each_line in f:if each_line[:6] != '======':(role, line_spoken) = each_line.split(':', 1)if role == '小甲鱼':boy.append(line_spoken)if role == '小客服':girl.append(line_spoken)else:save_file(boy, girl, count)boy = []girl = []count += 1save_file(boy, girl, count)f.close()split_file('record.txt')
模块导入import,包括变量和函数等文件,可被其他程序引入后使用
模块:Mac OS,Windows,Linux,UNIX等,对文件系统访问原理是不一样的
>>> import os >>> os.getcwd() 'C:\\ProgramData\\Anaconda3\\Scripts' >>> os.chdir('D:\\') >>> os.getcwd() 'D:\\' >>> os.listdir('D:\\') ['$RECYCLE.BIN', '360安全浏览器下载', 'Gaomin', 'Python Project', 'Python视频', 'QQMusicCache', 'record.txt', 'record1.txt', 'Software', 'System Volume Information', 'test1.txt', 'test10.txt', '心理学'] >>> os.mkdir('D:\\A') >>> os.mkdir('D:\\A\\B') >>> os.mkdir('D:\\C\\B') Traceback (most recent call last):File "<pyshell#10>", line 1, in <module>os.mkdir('D:\\C\\B') FileNotFoundError: [WinError 3] 系统找不到指定的路径。: 'D:\\C\\B' >>> os.makedirs(('D:\\A\\B\\test.txt')) >>> os.rmdir(('D:\\A\\B\\test.txt')) >>> os.rmdir(('D:\\A\\B')) >>> os.rmdir(('D:\\A\\B\\test.txt'))#逐层删除 Traceback (most recent call last):File "<pyshell#14>", line 1, in <module>os.rmdir(('D:\\A\\B\\test.txt'))#逐层删除 FileNotFoundError: [WinError 3] 系统找不到指定的路径。: 'D:\\A\\B\\test.txt' >>> os.rmdirs(('D:\\A))#逐层删除 SyntaxError: EOL while scanning string literal >>> os.system('cmd')
>>> import os >>> os.path.basename('D:\\A\\B\\A.avi') 'A.avi' >>> os.listdir(os.curdir) >>> os.path.dirname('D:\\A\\B\\A.avi') 'D:\\A\\B' >>> os.path.join('D:\\A','A','B','A.avi') 'D:\\A\\A\\B\\A.avi' >>> os.path.dirname('D:\\A\\B\\A.avi') 'D:\\A\\B' >>> os.path.join('D:\\A','A','B','A.avi') 'D:\\A\\A\\B\\A.avi' >>> import time >>> time.gmtime(os.path.getatime('D:\\A\\test.txt')) time.struct_time(tm_year=2018, tm_mon=1, tm_mday=4, tm_hour=22, tm_min=26, tm_sec=19, tm_wday=3, tm_yday=4, tm_isdst=0) >>> time.localtime(os.path.getatime('D:\\A\\test.txt')) time.struct_time(tm_year=2018, tm_mon=1, tm_mday=5, tm_hour=6, tm_min=26, tm_sec=19, tm_wday=4, tm_yday=5, tm_isdst=0) >>> time.localtime(os.path.getatime('D:\\A\\test.txt')) time.struct_time(tm_year=2018, tm_mon=1, tm_mday=5, tm_hour=6, tm_min=26, tm_sec=19, tm_wday=4, tm_yday=5, tm_isdst=0) >>> time.localtime(os.path.getctime('D:\\A\\test.txt')) time.struct_time(tm_year=2018, tm_mon=1, tm_mday=5, tm_hour=6, tm_min=26, tm_sec=19, tm_wday=4, tm_yday=5, tm_isdst=0) >>> A\\ SyntaxError: unexpected character after line continuation character >>> os.path.ismount('D:\\A')) SyntaxError: invalid syntax >>> KeyboardInterrupt >>> os.path.ismount('D:\\') True >>> os.path.ismount('D:\\A') False
转载于:https://www.cnblogs.com/samyll/p/8192992.html
028-030文件及文件系统相关推荐
- s-stat 查看文件或者文件系统的状态信息
命令用法 stat [OPTION]... FILE... -L 查看链接文件 -f 查看文件系统信息,而非文件信息 -c --format=%a 支持使用格式化字符串输出结果,支持\n,\t等转义字 ...
- linux 函数 缩小文件,linux文件系统的处理函数
文件系统 通用:rename(原路径名,新路径名); 修改文件名 remove(路径名); 删除文件或路径 symlink(原路径名,符号链接名); 建立文件或路径的软链接 access ...
- c++创建文件_JavaNote 文件系统及Java文件基本操作
文件概述 文件系统是由OS(操作系统)管理的: 文件系统和Java进程是平行的,是两套系统: 文件系统是由文件夹和文件递归组合而成: 文件目录分隔符 Linux/Unix 用/隔开 Windows用隔 ...
- 六、文件管理(1.文件和文件系统)
文件和文件系统 一. 文件.记录和数据项 1. 数据项 ①基本数据项:由数据名和数据类型组成,是数据组织中可以命名的逻辑数据单位(原子数据),例如:姓名(符串类型),年龄(整型). ②组合数据项:有若 ...
- 文件管理之文件和文件系统
文件是数据的一种组织形式,而文件管理系统是指文件和对文件进行操纵和管理的软 件集合. 数据的组成 基于文件系统的概念而把数据的组成分为数据项.记录和文件三级 ⑴ 数据项: 基本数据项----用于描述一 ...
- datawhale组队学习task9—文件与文件系统
1. 文件与文件系统 打开文件 open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, close ...
- Python学习 Task9:文件与文件系统
Task9:文件与文件系统 文件与文件系统 1.1 打开文件 1.2 文件对象方法 1.3 简洁的 with 语句 文件与文件系统 1.1 打开文件 open(file, mode='r', buff ...
- Python基础语法笔记(十六)文件与文件系统
Reference https://github.com/datawhalechina/team-learning-program/blob/master/PythonLanguage 1. 文件与文 ...
- Python_Task09:文件与文件系统
文件与文件系统 学习教程 1. 文件与文件系统 打开文件 文件对象方法 简洁的 with 语句 2. OS 模块中关于文件/目录常用的函数 3. 序列化与反序列化 练习题 学习教程 转自:https: ...
- Task09文件与文件系统
文件与文件系统 文件:由创建者定义的.具有文件名的一组相关元素的集合. 文件管理:把所管理的程序和数据组织成一系列的文件,并能进行合理的存储.使用等操作. 打开文件 open(file, mode=' ...
最新文章
- Kafka不停机,如何无感知迁移ZooKeeper集群?
- Redis作者的公开信:开源维护者的挣扎和无奈
- 关于两个用于创建和销毁二维动态数组的宏
- .Net 事件类型的实现和推荐做法
- 记一次更改了电脑名称后遇到的各种错误反思及感想
- 激动的时刻,终于成啦~
- 设计模式(一)---单一职责原则
- matlab常用数学函数实验,实验二-MATLAB的数学运算基础.ppt
- 人脸识别全国产化电子元件推荐方案
- C# 反双曲余弦函数
- 关系网络lbs的应用_基于LBS的陌生人社交APP
- Linux虚拟机在线添加GPT格式硬盘
- 实战详解Maven部署(deploy)jar到私有仓库Nexus及如何引入私仓jar包
- CandidateScorer
- matlab 三叶线,面积计算求三叶线r=asin3φ所围成的面 – 手机爱问
- 人工智能神经网络有哪些研究的领域,详细说明
- 记录一次Win7接入NVME固态的过程
- h5 加载完成_【全国“创文”】城市文明宣传H5案例赏析
- 浅谈西门子840d主轴速度控制_20190324工控维修日记(西门子系统第九讲)
- 有数 ≠ 用数,来看数据应用在 E 宠如何“跑业务”