文件系统操作(os模块)

 import os

 file_name = "D:\\test_data\\1.txt"
file_name_2 = "D:\\test_data\\3.txt"
# 删除文件
# os.remove(file_name) # 文件重命名
# os.rename(file_name, file_name_2) # 删除空目录
dir_name = 'D:\\test_data\\1'
# os.removedirs(dir_name) dir = 'D:\\test_data\\1'
# 获取指定目录下的文件列表
file_lists = os.listdir(dir)
print("获取指定目录下的文件列表:", file_lists)
# 获取文件创建时间
file_time = os.path.getmtime(dir + "\\" + file_lists[-1])
print("文件创建时间:", file_time)
# 判断文件是否是目录
file_is_dir = os.path.isdir(dir + "\\" + file_lists[-1])
print("文件是否是目录:", file_is_dir)
# 组装文件完整路径
file_path = os.path.join(dir, file_lists[-1])
print("文件的完整路径:", file_path)
# 获取文件大小
file_size = os.path.getsize(file_path)
print("文件大小:", file_size)

运行结果:

 获取指定目录下的文件列表: ['2-1', '2-1.txt', '2-2', '2-2.txt']
文件创建时间: 1500290284.2089198
文件是否是目录: False
文件的完整路径: D:\test_data\1\2-2.txt
文件大小: 3

文件遍历:

  • 遍历目录下所有文件包括子目录
  • os.walk功能:递归遍历目录下的文件和子目录,参数(需要遍历的目录,排序=ture为顺序)
  • 返回三个值:当前目录、当前目录下的目录列表和当前目录下的文件列表
 for file_path, dirs, file_names in os.walk(dir_name, topdown=True):
print("----------------------------------")
print("原名:", file_path, dirs, file_names)
for file_name in file_names: # 遍历文件名列表
print("-" * 20)
print("目录下文件路径:", os.path.join(file_path, file_name))
file_name_temp = os.path.join(file_path, file_name) # 组装完整文件名称,含路径
list = file_path.split("\\") # 切分文件名,方便获取父目录名称
print("文件父目录名:", list[-1])

运行结果:

 ----------------------------------
原名: D:\1 ['2-1', '2-2'] ['2-1.txt', '2-2.txt']
----
目录下文件路径: D:\1\2-1.txt
文件父目录名: 1
----
目录下文件路径: D:\1\2-2.txt
文件父目录名: 1
----------------------------------
原名: D:\1\2-1 ['3-1', '3-2'] ['3-1.txt']
----
目录下文件路径: D:\1\2-1\3-1.txt
文件父目录名: 2-1
----------------------------------
原名: D:\1\2-1\3-1 [] ['4-1.txt']
----
目录下文件路径: D:\1\2-1\3-1\4-1.txt
文件父目录名: 3-1
----------------------------------
原名: D:\1\2-1\3-2 [] []
----------------------------------
原名: D:\1\2-2 [] []

python之文件系统操作(os模块)的更多相关文章

  1. python文件、文件夹操作OS模块

    转自:python文件.文件夹操作OS模块   '''一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前工作目录,即当前Python脚本工作的目录路径: ...

  2. Python 入门之 内置模块 -- os模块

    Python 入门之 内置模块 -- os模块 1.os os是和操作系统做交互,给操作发指令 os模块是与操作系统交互的一个接口,它提供的功能多与工作目录,路径,文件等相关 (1)工作路径 prin ...

  3. Python文件系统功能:os模块

    Python文件系统功能:os模块 1.os模块方法分类 (1)目录: chdir() 改变工作目录 chroot() 设定当前进程的根目录 listdir() 列出指定目录下的所有文件名 mkdir ...

  4. python文件操作os模块

    Python 统计某一文件夹下文件数量 使用python  pathlib模块 from pathlib import Path dir_path = ' ' print(len(list(Path( ...

  5. [转]python中对文件、文件夹的操作——os模块和shutil模块常用说明

    转至:http://l90z11.blog.163.com/blog/static/187389042201312153318389/ python中对文件.文件夹的操作需要涉及到os模块和shuti ...

  6. python杂记-1(os模块)

    os模块说明:python os模块包含普遍的操作系统功能 os.access(path, mode) # 检验权限模式 os.chdir(path) # 改变当前工作目录os.chflags(pat ...

  7. 【Python】 sys和os模块

    sys sys模块能使程序访问于python解释器联系紧密的变量和函数 ● sys中的一些函数和变量 argv 命令行参数构成的列表 path 查找所有可用模块所在的目录名的列表 platform 查 ...

  8. python 输入输出,file, os模块

    Python 输入和输出 输出格式美化 Python两种输出值的方式: 表达式语句和 print() 函数. 第三种方式是使用文件对象的 write() 方法,标准输出文件可以用 sys.stdout ...

  9. Python学习笔记之os模块

    Python中的os提供了非常丰富的方法用来处理文件和目录,下面我们将详细的介绍os相关的一些方法和函数: os 路径相关的函数: 1.os.listdir(dirname):列出dirname目录下 ...

随机推荐

  1. <操作系统>进程和线程

    进程 定义: 一个正在执行的程序: 一个正在计算机上执行的程序实例; 能分配给处理器并由处理器执行的实体: 一个由一组执行指令,一个当前状态和一组相关的系统资源表征的活动单元. 进程的基本元素:程序代 ...

  2. Photoshop 基础三 制作简单按钮

    要求知识点:移动工具.选择工具.套索工具.多边行工具.文本工具.路径选择工具.裁剪.填充 一.制作简单按钮 1)新建画布,大小随便 2)画圆角矩形工具(同时定义背景色.边框是否需求.边框颜色) 3)打 ...

  3. Centos7下完美安装并配置mysql5.6

    Centos7将默认数据库mysql替换成了Mariadb,对于我们这些还想用mysql的人来说并不是一个好消息. 最近我搜罗了网上各种安装教程,各种出问题,要么安装失败,要么安装成功了却使用不了my ...

  4. three.js - 渲染并展示三维对象

    看结果: 看源码及解释: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  5. 一次学生时代的经历,利用Python在机房杀红蜘蛛,脱离老师控制!

    这个为什么说是一次学生时代的经历呢,我的出发点并没有是为了吊胃口.确实,这个Python小应用,只能在学生时代用得着吧,尤其是高中和大学,如果你没有想到也没关系,看完我下面说的就会明白了.   在这里 ...

  6. js求数组的最大值--奇技淫巧和笨方法

    写这篇文章的原因 我目前做的项目很少用到算法,于是这方面的东西自然就有点儿生疏.最近的一次编码中遇到了从数组中获取最大值的需求,当时我不自觉的想到了js的sort()函数,现在想来真是有些“罪过”,当 ...

  7. Unexpected error from external database driver (1)

    当尝试把Excel导入SQL时,发生此异常: Unexpected error from external database driver (1). 在网上查找到一个解决方法,网址http://dat ...

  8. POJ3292&&2115

    这两道题还是比较简单的,没有什么难度 不过归在数论这个专题里我还是比较认同的,多少有些关系 3292 题目大意:给你一个范围n,让你求出这个范围内所有形式类似\(4k+1(k为正整数)\)的数中的H- ...

  9. 面试3——java集合类总结(Map)

    1.概述: Java 中的map集合使用键值对(key-value)来保持数据,其中值(value)可以重复,键(key)必须唯一,但最多只能有一个key为空,它的主要实现类有HashMap.Hash ...

  10. linux中fork, source和exec的区别

    转:linux中fork, source和exec的区别 shell的命令可以分为内部命令和外部命令. 内部命令是由特殊的文件格式.def实现的,如cd,ls等.而外部命令是通过系统调用或独立程序实现 ...