在Linux系统下用Python写脚本,肯定不能避免各种与目录和文件夹有关的操作。为了以后方便查阅,简单地针对Python中与目录和文件夹有关的操作进行汇总。

  需要实现导入的模块为: import os

1. 得到当前工作目录,即当前Python脚本工作的目录路径:

  path=os.getcwd()

  在这里引用一个比较好的例子,来源于:牛皮糖的旅程

  我们将abc.py放入A文件夹。并且希望不管将A文件夹放在硬盘的哪个位置,都可以在A文件夹内生成一个新文件夹。且文件夹的名字根据时间自动生成。

import os
import time
folder = time.strftime(r"%Y-%m-%d_%H-%M-%S",time.localtime())
os.makedirs(r'%s/%s'%(os.getcwd(),folder))

2. 返回指定目录下的所有文件和目录名:

  os.listdir()

3. 判断一个路径(目录或文件)是否存在:

  b = os.path.exists("路径")——返回值b:True 或 False

4. 判断一个路径是否文件:

  b = os.path.isfile("路径")——返回值b:True 或 False

5. 判断一个路径是否目录:

  b = os.path.isdir("路径")——返回值b: True 或 False

6. 创建子目录:

  os.makedirs(path)——path是"要创建的子目录"

  调用有可能失败,可能的原因是:

  (1) path 已存在时(不管是文件还是文件夹);

  (2) 驱动器不存在;

  (3) 磁盘已满;

  (4)磁盘是只读的或没有写权限。

7. 删除子目录:

  os.rmdir(path)——path: "要删除的子目录"

  产生异常的可能原因:

  (1) path 不存在;

  (2) path 子目录中有文件或下级子目录;

  (3) 没有操作权限或只读。

  shutil.rmtree(path)——空目录、有内容的目录都可以删

8. 删除文件:

  os.remove(filename)——filename: "要删除的文件名"

  产生异常的可能原因:

  (1) filename 不存在;

  (2) 对filename文件,没有操作权限或只读。

9. 文件改名:

  os.name(oldfileName, newFilename)

  产生异常的原因:

  (1) oldfilename 旧文件名不存在;

  (2) newFilename 新文件已经存在时,需要先删除 newFilename 文件。

10. 获取文件大小:

  os.path.getsize(filename)

11. 将一个路径名分解为目录名和文件名两部分:

  fpath , fname = os.path.split("路径")

  例如:

    a, b = os.path.split( "c:\\123\\456\\test.txt" )

    print a

    print b

    显示:

    c:\123\456

    test.txt

12. 分解文件名的扩展名:

  fpathandname , fext = os.path.splitext("路径")

  例如:

    a, b = os.path.splitext( "c:\\123\\456\\test.txt" )

    print a

    print b

  显示:

    c:\123\456\test

    .txt

[Python] 目录和文件操作的更多相关文章

  1. python目录和文件操作

    一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法. 要操作目录,必须引入os模块 import os1.得到当前工作目录,即当前Python脚本工作的目录路径: os ...

  2. Python目录与文件操作

    一.判断一个路径是否存在 os.path.exists(path) 如果路径存在则返回True,否则返回False. import os import getpass # 获取当前系统用户名 user ...

  3. [python]目录及文件操作

    Python OS模块和shutil模块 获取路径 # 获取当前路径 pwd = os.getcwd() # 获取上级路径 a_pwd = os.path.abspath(os.path.dirnam ...

  4. python os&shutil 文件操作

    python os&shutil 文件操作 # os 模块 os.sep 可以取代操作系统特定的路径分隔符.windows下为 '\\' os.name 字符串指示你正在使用的平台.比如对于W ...

  5. python 历险记(三)— python 的常用文件操作

    目录 前言 文件 什么是文件? 如何在 python 中打开文件? python 文件对象有哪些属性? 如何读文件? read() readline() 如何写文件? 如何操作文件和目录? 强大的 o ...

  6. Python的高级文件操作(shutil模块)

    Python的高级文件操作(shutil模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果让我们用python的文件处理来进行文件拷贝,想必很多小伙伴的思路是:使用打开2个 ...

  7. python基础篇(文件操作)

    Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...

  8. Linux 目录和文件操作

    Linux常用命令--目录和文件操作 [目录]删除.复制.移动 : 1.删除文件夹用:rmdir 文件夹名 但是rmdir不能删除非空的文件夹,那如何删除非空文件夹呢: 2.通常情况下,删除文件用:r ...

  9. Python 目录和文件基本操作

    今天在写一个小工具的过程中发现对目录和文件的基本操作不是很熟,特此把遇到的常用操作总结汇总下. 获取当前路径:os.getcwd() 目录操作:1.创建目录:os.mkdir('目录名')2.创建多级 ...

随机推荐

  1. J2EE基础之EJB

    J2EE基础之EJB 1.什么是EJB?       EJB(Enterprise Java Beans),是JavaEE中的商业应用组件技术,是JavaEE三大组件(Servlet,JSP,EJB) ...

  2. CI连接多个数据库

    参考http://codeigniter.org.cn/user_guide/database/connecting.html手册 首先,在database.php中设置多个数据库的连接信息,这里命名 ...

  3. 图像柔光效果(SoftGlow)的原理及其实现。

    图像柔光效果在很多商业软件中都有实现,比如美图秀秀,光影魔术手等.其能针对原始图像产生一副新的比较平滑感觉光线比较柔和的效果,给人一种朦胧美,如下面几幅图所示:                     ...

  4. 第二章 spring

    一.Bean作用域 spring容器创建的时候,会将所有配置的bean对象创建出来,默认bean都是单例的.代码通过getBean()方法从容器获取指定的bean实例,容器首先会调用Bean类的无参构 ...

  5. [AR]高通Vuforia之Frame Markers

    软件环境 SDK:FrameMarkers-6-0-112.unitypackage(从官网 -> Download -> Samples -> Core Features 下载 ) ...

  6. BZOJ2748[HAOI2012]音量调节

    Description 一个吉他手准备参加一场演出.他不喜欢在演出时始终使用同一个音量,所以他决定每一首歌之前他都要改变一次音量.在演出开始之前,他已经做好了一个列表,里面写着在每首歌开始之前他想要改 ...

  7. 在IIS中实现JSP

    在IIS中实现JSP    IIS本身是不可以支持JSP页面的,但是随着JAVA技术的广泛应用,越来越多的网站采用JAVA技术编写程序,我们根据一些资料和自己的实践经验总结了以下两种JAVA应用服务器 ...

  8. knockoutJS学习笔记01:从拼接字符串到编写模板引擎

    开篇 关于knockout的文章,园里已经有很多大神写过了,而且都写得很好.其实knockout学习起来还是很容易的,看看官网的demo和园里的文章,练习练习就可以上手了(仅限使用,不包含研究源码). ...

  9. Fiddler 使用备忘

    快捷键 ctrl + f(session 查询,高亮) ctrl + x(清除所有 session) alt + q(定位到命令行,以下操作为命令行语句) help(查看帮助文档) select sc ...

  10. 浅谈 underscore 内部方法 group 的设计原理

    前言 真是天一热什么事都不想干,这个月只产出了一篇文章,赶紧写一篇压压惊! 前文(https://github.com/hanzichi/underscore-analysis/issues/15)说 ...