python基础学习总结(八)

@


一、os模块

Python的os模块提供了帮你执行文件处理操作的方法,比如重命名和删除文件。

要使用这个模块,你必须先导入它,然后才可以调用相关的各种功能。

1
2
3
4
5
6
#加载
import os
#查看os下的函数
print(dir(os))
#查看os.path下的函数
print(dir(os.path))

1. 常用函数

1> rename() 方法

rename() 方法为重命名文件,需要两个参数,当前的文件名和新文件名。

1
2
3
4
import os

# 重命名文件password.txt到test.txt。
os.rename("password.txt", "test.txt")

2> remove()方法

你可以用remove()方法删除文件,需要提供要删除的文件名作为参数。

1
2
3
4
import os

# 删除一个已经存在的文件test.txt
os.remove("test.txt")

3> mkdir()方法

可以使用os模块的mkdir()方法在当前目录下创建新的目录们。你需要提供一个包含了要创建的目录名称的参数。

1
2
3
4
import os

# 创建目录test
os.mkdir("test")

4> chdir()方法

可以用chdir()方法来改变当前的目录。chdir()方法需要的一个参数是你想设成当前目录的目录名称。

1
2
3
4
import os

# 将当前目录改为"/home/newdir"
os.chdir("/home/newdir")

5> getcwd()方法

getcwd()方法显示当前的工作目录。

1
2
3
4
import os

# 给出当前的目录
print(os.getcwd())

6. rmdir()方法

rmdir()方法删除目录,目录名称以参数传递。

在删除这个目录之前,它的所有内容应该先被清除。

以下是删除” /tmp/test”目录的例子。目录的完全合规的名称必须被给出,否则会在当前目录下搜索该目录。

1
2
3
4
import os

# 删除”/tmp/test”目录
os.rmdir( "/tmp/test" )

2. os具体函数即功能(39个)

函数 描述 语法 示例
os.name() 显示当前使用的平台,’nt’表示Windows,’posix’ 表示Linux os.name() 'nt'
os.getcwd() 返回当前进程的工作目录 os.getcwd() 'C:\\Users\\wuzhengxiang'
os.chdir(path) 改变当前工作目录到指定的路径 os.chdir(path) os.chdir('C:/Users/wuzhengxiang/Desktop/股票数据分析')
os.makedirs(path) 递归创建目录,创建的所有 intermediate-level 文件夹需要包含子目录 os.makedirs(path, mode=0o777) os.makedirs('C:/Users/wuzhengxiang/Desktop/股票数据分析/1122', mode=0o777)
os.mkdir(path) 以数字权限模式创建目录,默认的模式为 0777 os.mkdir(path[, mode]) os.mkdir('C:/Users/wuzhengxiang/Desktop/股票数据分析/2233', mode=0o777)
os.listdir(path) 列出目录下的所有文件和文件夹 os.listdir(path) os.listdir('C:/Users/wuzhengxiang/Desktop/股票数据分析')
os.remove(path) 删除指定路径的文件 os.remove(path) os.remove('C:/Users/zhengxiang.wzx/Desktop/timg.jpg')
os.rename(src, dst) 重命名文件或目录 os.rename(src, dst) os.rename("图片下载.py","图片下载1.py")
os.renames(old, new) 递归重命名目录或文件 os.renames(old, new) os.renames("test/Python 63个内置函数详解.py","test2/内置函数详解.py")
os.linesep 当前平台用于分隔(或终止)行的字符串 os.linesep '\r\n'
os.pathsep 操作系统用于分隔搜索路径中不同部分的字符 os.pathsep ';'
os.close(fd) 关闭指定的文件描述符 os.close(fd) `fd = os.open(“foo.txt”, os.O_RDWR
os.stat(path) 获取文件或者目录信息 os.stat(path) os.stat('C:/Users/wuzhengxiang/Desktop/股票数据分析/pi.txt')
os.sep 显示当前平台下路径分隔符 os.sep '\\'
os.path.abspath(path) 返回文件的绝对路径 os.path.abspath(path) os.path.abspath('all_data.xlsx')
os.path.basename(path) 返回文件名,纯粹字符串处理逻辑,路径错误也可以 os.path.basename(path) os.path.basename('C:\\Users\\zhengxiang.wzx\\all_data.xlsx')
os.path.commonprefix(list) 返回多个路径中所有路径共有的最长的路径 os.path.commonprefix(list) os.path.commonprefix(['http://c.biancheng.net/python/aaa', 'http://c.biancheng.net/shell/'])
os.path.dirname(path) 返回文件路径 os.path.dirname(path) os.path.dirname('C://my_file.txt')
os.path.exists(path) 如果路径存在,返回 True;如果路径不存在,返回 False os.path.exists(path) os.path.exists('C:/Users/wuzhengxiang/Desktop/股票数据分析/pi.txt')
os.path.lexists(path) 路径存在则返回True,路径损坏也返回True,不存在返回 False os.path.lexists(path) os.path.lexists('C:/Users/wuzhengxiang/Desktop/股票数据分析/pi.txt')
os.path.expanduser(path) 把路径中包含的”~”和”user”转换成用户目录 os.path.expanduser(path) os.path.expanduser('~/wuzhengxiang/Desktop/股票数据分析/')
os.path.expandvars(path) 根据环境变量的值替换路径中包含的”$name”和”${name}” os.path.expandvars(path) os.environ['KITTIPATH'] = 'D:/thunder'; os.path.expandvars('$KITTIPATH/train/2011_09_26_drive_0001_sync/proj_depth/velodyne_raw/image_02/0000000013.png')
os.path.getatime(path) 返回最近访问时间(浮点型秒数),从新纪元到访问时的秒数 os.path.getatime(path) os.path.getatime('C:/Users/wuzhengxiang/Desktop/股票数据分析/pi.txt')
os.path.getmtime(path) 返回最近文件修改时间,从新纪元到访问时的秒数 os.path.getmtime(path) os.path.getmtime('C:/Users/wuzhengxiang/Desktop/股票数据分析/pi.txt')
os.path.getctime(path) 返回文件创建时间,从新纪元到访问时的秒数 os.path.getctime(path) os.path.getctime('C:/Users/wuzhengxiang/Desktop/股票数据分析/pi.txt')
os.path.getsize(path) 返回文件大小,如果文件不存在则返回错误 os.path.getsize(path) os.path.getsize('C:/Users/wuzhengxiang/Desktop/股票数据分析/test.gif')
os.path.isabs(path) 判断是否为绝对路径 os.path.isabs(path) os.path.isabs('D:/thunder')
os.path.isfile(path) 判断路径是否为文件 os.path.isfile(path) os.path.isfile('C:/Users/wuzhengxiang/Desktop/股票数据分析/pi.txt')
os.path.isdir(path) 判断路径是否为目录 os.path.isdir(path) os.path.isdir('C:/Users/wuzhengxiang/Desktop/股票数据分析')
os.path.join(path1, ...) 把目录和文件名合成一个路径 os.path.join(path1[, path2[, ...]]) os.path.join('C:/Users','wuzhengxiang/Desktop/','股票数据分析')
os.path.normcase(path) 转换路径的大小写和斜杠 os.path.normcase(path) os.path.normcase('D:\\Python\\test\\data.txt')
os.path.normpath(path) 规范化路径字符串形式 os.path.normpath(path) os.path.normpath('c://windows\\System32\\../Temp/')
os.path.realpath(path) 返回路径的真实路径 os.path.realpath(path) os.path.realpath('C:/Users/wuzhengxiang/Desktop/股票数据分析/pi.txt')
os.path.relpath(path[, start]) 返回从当前目录或 start 目录到达 path 之间要经过的相对路径 os.path.relpath(path[, start]) os.path.relpath('C:/Users/wuzhengxiang/Desktop/股票数据分析/test.gif')
os.path.samefile(path1, path2) 判断目录或文件是否相同 os.path.samefile(path1, path2) os.path.samefile('C:\\Users', 'C:/Users')
os.path.split(path) 把路径分割成目录名和文件名,返回一个元组 os.path.split(path) os.path.split('D:\\Python\\test\\data.txt')
os.path.splitdrive(path) 返回驱动器名和路径组成的元组 os.path.splitdrive(path) os.path.splitdrive('C:/Users/zhengxiang.wzx/IMG_7358.JPG')
os.path.splitext(path) 分割路径,返回路径名和文件扩展名的元组 os.path.splitext(path) os.path.splitext('C:/Users/zhengxiang.wzx/IMG_7358.JPG')