1  python内建函数open和file

文件打开方便读取:f = open('文件名','模式','缓冲模式')         #'r'读取,'w'写入(先清空后创建).'a'追加

详情文件模式:
r 以读方式打开
rU 或 Ua 以读方式打开, 同时提供通用换行符支持 (PEP 278)
w 以写方式打开 (必要时清空)
a 以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+ 以读写模式打开
w+ 以读写模式打开 (参见 w )
a+ 以读写模式打开 (参见 a )
rb 以二进制读模式打开
wb 以二进制写模式打开 (参见 w )
ab 以二进制追加模式打开 (参见 a )
rb+ 以二进制读写模式打开 (参见 r+ )
wb+ 以二进制读写模式打开 (参见 w+ )
ab+ 以二进制读写模式打开 (参见 a+ )

文件读取:

f.read()     #读取所有文件内容到字符串,从开头到结尾
        f.readline()        #读取文件的一行作为字符串,一行一行地读,比较费时间     遍历:for i in range(10): \n    print f.readline()
        f.readlines()          #读取所有行,输出一个字符串的列表,比较占内存

文件输出:

f.write()     #把内容写进文件中去

f.writelines()     #接受一个字符串列表作为参数,将他们写入文件

#实例:把input的内容写到t1.txt中
f = open('t1.txt','w')
while True:aline = raw_input('enter a line,"."to quit:')if aline != '.':f.write(aline+'\n')    else:        breakf.close()

2 os包相关操作

当前路径: print os.getcwd(),'获得当前路径'

文件夹和文件夹名称: print os.path.split('D:\pytharm\学习文件\py5.py')    #将文件的路径和文件名分开,放到元组中

print os.path.join('D:\pytharm\学习文件','shiyan.txt'),    #把路径和文件名组合起来'

路径和文件:print os.path.dirname('D:\pytharm\学习文件\lianxi.txt'),    #输出文件中的文件夹部分,元组'

1. os.name——判断现在正在实用的平台,Windows 返回 ‘nt'; Linux 返回’posix'2. os.getcwd()——得到当前工作的目录。3. os.listdir()——指定所有目录下所有的文件和目录名4. os.remove()——删除指定文件5. os.rmdir()——删除指定目录6. os.mkdir()——创建目录7. os.path.isfile()——判断指定对象是否为文件。是返回True,否则False8. os.path.isdir()——判断指定对象是否为目录。是True,否则False。9. os.getcwd()——获得当前工作的目录(get current work dir)13. os.chdir()——改变目录到指定目录14. os.path.getsize()——获得文件的大小,如果为目录,返回015. os.path.abspath()——获得绝对路径。16. os.path.join(path, name)——连接目录和文件名

3  实例(使用的是linux系统)#!/user/bin/python

#!/user/bin/python
#coding:utf-8#打印出某文件夹下面的文件文件夹和子文件子文件夹的绝对路径import os
allfile=[]
def dirList(path):filelist=os.listdir(path)for filename in filelist:filepath= os.path.join(path,filename)if os.path.isdir(filepath):    # 递归调用本身:传入子文件的路径,listdir,遍历,文件名和路径合起来,判断是不是目录,dirList(filepath)    allfile.append(filepath)return allfileafile=dirList('/home/daqing/daqing/testfile/user1')
print afile

4目录遍历简洁升级版

os.walk(path):该函数返回一个元组,元组的元素是:每次遍历的路径名,当前目录列表和文件列表

os.walk('/home/daqing/lianxi/testfile/user2')返回一个生成器类型,大体格式应当是('/home/daqing/lianxi/testfile/user2',['hehe'],['7777'])
import os
for path,d,filelist in os.walk('/home/daqing/lianxi/testfile/user2'):for filename in filelist:print os.path.join(path,filename)#返回结果:
/home/daqing/lianxi/testfile/user2/7777
/home/daqing/lianxi/testfile/user2/hehe/8888目

目录结构如下:

── user2
│   ├── 7777
│   └── hehe
│           ├── 8888
│           └── haha

  

转载于:https://www.cnblogs.com/0-lingdu/p/9431543.html

核心编程9 文件和文件的输入输出 (os模块)相关推荐

  1. C++核心编程(四)--文件操作

    5 文件操作 程序运行时产生的数据都属于临时数据,程序一点运行结束,就会被释放 通过文件可以将数据持久化 C++中对文件操作需要包含头文件:fstream 文件类型分为两种: 文本文件:文件以文本的A ...

  2. Python(10)文件操作(IO 技术)、OS模块、递归

    文章目录 文件操作(IO 技术) 文本文件和二进制文件 文件操作相关模块概述 创建文件对象 open() 基本的文件写入操作 常用编码介绍 ASCII ISO8859-1 GB2312 GBK GB1 ...

  3. mac怎么用c语言写文件路径,Mac 中使用os模块更改文件路径

    cmd+opt+c 复制路径 path='/Applications/MAMP/htdocs/python/day04model/' import sys import os sys.path.app ...

  4. python核心编程--笔记(不定时跟新)(转)

    的解释器options: 1.1 –d   提供调试输出 1.2 –O   生成优化的字节码(生成.pyo文件) 1.3 –S   不导入site模块以在启动时查找python路径 1.4 –v   ...

  5. 「地表最强」C++核心编程(五)类和对象--对象初始化和清理

    环境: 编译器:CLion2021.3:操作系统:macOS Ventura 13.0.1 文章目录 一.构造函数和析构函数 1.1 构造函数 1.2 析构函数 1.3 示例 二.构造函数的分类及调用 ...

  6. 「地表最强」C++核心编程(七)类和对象--友元

    环境: 编译器:CLion2021.3:操作系统:macOS Ventura 13.0.1 文章目录 一.全局函数做友元 二.类做友元 三.成员函数做友元 地表最强C++系列传送门: 「地表最强」C+ ...

  7. 七、PyQt5文件及文件夹操作(高级应用篇)

    三.高级应用 该部分包括文件及文件夹操作.PyQt5绘图技术.多线程编程.PyQt5程序的打包发布.学完这一部分,能够开发文件流程序.图形图像程序.多线程应用程序等,能够对PyQt5程序进行打包. ( ...

  8. python创建文件os_Python之文件与目录操作(os、zipfile、tarfile、shutil)

    Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模块 ...

  9. python可以处理哪些文件_python文件处理

    1.python文件概念 python中文件就是一个对象,而linux中一切设备都可以看成文件,例如:磁盘文件,管道,网络Socket,外设等,都可以使用文件的方式对其进行操作.linux中文件的属性 ...

  10. Python基础day07 作业解析【文件操作(文件读写、文件夹操作)】

    视频.源码.课件.软件.笔记:超全面Python基础入门教程[十天课程]博客笔记汇总表[黑马程序员] Python基础day07[文件读写.文件夹操作.面向对象(类.对象)] 目录 加强训练 题目1 ...

最新文章

  1. 美多商城之用户注册(展示用户注册页面)
  2. Spring Cloud 2022.0.0 M1 发布:需Java 17、兼容Spring Boot 3
  3. python时间重叠_最常见的重叠范围-Python3.x
  4. Oracle PCTfree assm,Oracle 段空间管理方式与PCTFREE和PCTUSED的概念
  5. 用C语言编程计算下列表达式:s=1! 2...,2012年全国计算机等级二级C语言模拟试题及答案(3)...
  6. 使用mysql命令修改配置信息
  7. 【技术角度看问题之一】ARM到底是个啥?
  8. 转:Java中子类是否可以继承父类的static变量和方法而呈现多态特性
  9. 瑞克·李特的追寻 正是我们所需要做的!中国
  10. 武汉大学计算机学院c404,985录取名单(武大)!武大不歧视!80分政治复习路线图!最新调剂信息!...
  11. python2 与python3 区别的总结 持续更新中......
  12. 牛客网 暑期ACM多校训练营(第二场)D.money-贪心 or 动态规划
  13. HashMap 的深入学习
  14. 实对称矩阵的特征值求法_线性代数之实对称矩阵得相似对角化问题的方法总结...
  15. 数据库实例和数据库关系
  16. python3.0编程软件_震惊!国内已知第一款Scratch 3.0编程软件KittenBlock推出Python编程功能!...
  17. 第一财经专访李旭阳:反诈骗、管控金融风险,腾讯安全发力联邦学习技术
  18. 为人处世,请从学会闭嘴开始!
  19. HDOJ 4238 - Programming the EDSAC 阅读理解..高精度处理
  20. 关于使用佳信客服产品时产生的14问

热门文章

  1. PS 技术篇-使用ps快速完成证件照片换背景色实例演示10s搞定!
  2. freeRtos学习笔(2)任务管理
  3. 第十一周项目实践4 BFS(广度优先搜索)基本模板
  4. rand--创建均匀分布随机矩阵
  5. R语言--查看数据类型+类型判断
  6. 强化学习——值迭代和策略迭代
  7. STM32F405的 ADC参考电压选择问题
  8. 实验八 《Coderxiaoban团队》团队作业4:基于原型的团队项目需求调研与分析
  9. 《实时控制软件开发》学生四次作业成绩总排名
  10. instanceof不是根据构造函数进行判断,而是原型链