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:
break
f.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,否则False

8. os.path.isdir()——判断指定对象是否为目录。是True,否则False。

9. os.getcwd()——获得当前工作的目录(get current work dir)

13. os.chdir()——改变目录到指定目录

14. os.path.getsize()——获得文件的大小,如果为目录,返回0

15. 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 allfile afile=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

  





核心编程9 文件和文件的输入输出 (os模块)的更多相关文章

  1. windows核心编程课程实践---多线程文件搜索器(MFC界面)

    课上完了连老师见都没见一面QAQ....记录一下该小项目 效果如下: 1.实现文件搜索功能,并封装为类 1)首先是文件搜索类Rapidfinder的构造函数和析构函数和文件信息初始化函数和文件路径规格 ...

  2. Python核心编程--学习笔记--9--文件和输入输出

    本章将深入介绍Python的文件处理和相关输入输出能力,包括:文件对象(以及它的内建函数.内建方法和属性),标准文件,文件系统的访问方法,文件执行,最后简要涉及持久存储和标准库中与文件有关的模块. 1 ...

  3. python核心编程学习记录之文件和输入输出

  4. python核心编程第二版笔记

    python核心编程第二版笔记由网友提供:open168 python核心编程--笔记(很详细,建议收藏) 解释器options:1.1 –d   提供调试输出1.2 –O   生成优化的字节码(生成 ...

  5. python核心编程--笔记

    python核心编程--笔记 的解释器options: 1.1 –d   提供调试输出 1.2 –O   生成优化的字节码(生成.pyo文件) 1.3 –S   不导入site模块以在启动时查找pyt ...

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

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

  7. python核心编程笔记(转)

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

  8. 孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容

     孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.打开文件后,要务必记得关闭,所以一般的写法应当 ...

  9. time | sys | os 模块,递归删除文件,项目分析

    一,复习 ''' 1.跨文件夹导包 - 不用考虑包的情况下直接导入文件夹(包)下的具体模块 2.__name__: py自执行 '__main__' | py被导入执行 '模块名' 3.包:一系列模块 ...

  10. (原创)Python文件与文件系统系列(2)——os模块对文件、文件系统操作的支持

    os模块的功能主要包括文件系统部分和进程管理部分,这里介绍其中与文件系统相关的部分. 当请求操作系统执行操作失败时,os模块抛出内置异常 exceptions.OSError 的实例,可以通过 os. ...

随机推荐

  1. appium desktop 1.7 的swipe功能不能用,重写。

    rt // @Override public void swipe(int startx,int starty,int endx,int endy,int ms){ Duration duration ...

  2. Unity 光照着色器

    光照着色器需要考虑光照的分类,一般分为漫反射和镜面反射. 漫反射计算基本光照: float brightness=dot(normal,lightDir)    将法线和光的入射方向进行点积运算,求出 ...

  3. MySQL创建方法错误:This function has none of DETERMINISTIC, NO SQL

    创建function时 出错信息: ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL ...

  4. 字符输入流 FileReader

    package cn.lideng.demo3; import java.io.FileNotFoundException; import java.io.FileReader; public cla ...

  5. hibernate的学习周

    Hibernate核心:ORM(对象关系映射) BeginSession关闭的时候要session.close(),而getCurrentsession不需要,它会自动关闭 Session.load( ...

  6. 上这个资源网站,让你轻松无忧找mac软件资源

    之前分享过好几篇关于mac软件相关的文章(想要看其他的mac软件专题文章,可以关注我,点击进入查看发表的文章),有网友表示,优质的软件推荐清单有了,想要下载和获取mac软件,买一个正版软件在APP s ...

  7. hihocoder图像算子(高斯消元)

    描述 在图像处理的技术中,经常会用到算子与图像进行卷积运算,从而达到平滑图像或是查找边界的效果. 假设原图为H × W的矩阵A,算子矩阵为D × D的矩阵Op,则处理后的矩阵B大小为(H-D+1) × ...

  8. 关于SSM的小感悟

    这周用SSM框架写了个小项目,真是各种百度啊,最后总算是实现了个登陆功能.刚才一直在修改,想实现登陆进去可以对id进行搜索,出现搜索的整体数据,无奈,一直没能实现.所以就只能留到下周了,到时候会把这个 ...

  9. Struts2_配置文件

    1.结果跳转方式 <struts> <constant name="struts.devMode" value="true"></ ...

  10. jquery validate 详解二

    原文:http://blog.sina.com.cn/s/blog_608475eb0100h3h2.html 这里只是第二篇,前面的内容请参阅上一篇 五.常用方法及注意问题 1.用其他方式替代默认的 ...