OS模块是python与操作系统进行交互的一个接口
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd
os.curdir 返回当前目录: ('.')
os.pardir 获取当前目录的父目录字符串名:('..')
os.makedirs('dirname1/dirname2') 可生成多层递归目录
os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename("oldname","newname") 重命名文件/目录
os.stat('path/filename') 获取文件/目录信息
os.sep 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep 输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep 输出用于分割文件路径的字符串 win下为;,Linux下为:
os.name 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command") 运行shell命令,直接显示
os.environ 获取系统环境变量
os.path.abspath(path) 返回path规范化的绝对路径
os.path.split(path) 将path分割成目录和文件名二元组返回
os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) 如果path是绝对路径,返回True
os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) 返回path的大小
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
import os
# 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式返回
res = os.listdir(r'E:/')
print(res)
# 统计文件的大小,以为字节为单位返回值
size = os.path.getsize(r'03.os模块.py')
print(size)
# os.remove() 删除一个文件
os.remove(r'tmp')
# os.rename("oldname","newname") 重命名文件/目录
os.rename('text', 'text1')
# os.system("bash command") 运行shell命令,直接显示
os.system(r'dir e:')
# os.environ 获取系统环境变量
print(os.environ)
# os.path.dirname(path) 返回path的目录
print(os.path.dirname('03.os模块.py'))
# os.path.basename(path) 返回path最后的文件名。
print(os.path.basename('03.os模块.py'))
# os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
print(os.path.exists('03.os模块.py'))
# os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
print(os.path.join('a', 'b', 'c'))
运行结果
['$RECYCLE.BIN', 'Application', 'Config.Msi', 'Develop_tools', 'System Volume Information']
1129
驱动器 E 中的卷是 Tools
卷的序列号是 F31A-8533
E:\ 的目录
2021/01/09 18:10 Application
2020/12/30 13:15 Develop_tools
0 个文件 0 字节
2 个目录 97,894,666,240 可用字节
environ({'ALLUSERSPROFILE': 'C:\\ProgramData', 'APPDATA': 'C:\\Users\\123\\AppData\\Roaming', 'CLASSPATH': '.C:\\Program Files\\Java\\JDK8\\lib\\dt.jar;C:\\Program Files\\Java\\JDK8\\lib\\tools.jar', 'COMMONPROGRAMFILES': 'C:\\Program Files (x86)\\Common Files', 'COMMONPROGRAMFILES(X86)': 'C:\\Program Files (x86)\\Common Files', 'COMMONPROGRAMW6432': 'C:\\Program Files\\Common Files', 'COMPUTERNAME': 'LAPTOP-AV5TB0BF', 'COMSPEC': 'C:\\Windows\\system32\\cmd.exe', 'DATAGRIP': 'E:\\Develop_tools\\DataGrip 2020.3\\bin;', 'DRIVERDATA': 'C:\\Windows\\System32\\Drivers\\DriverData', 'FPS_BROWSER_APP_PROFILE_STRING': 'Internet Explorer', 'FPS_BROWSER_USER_PROFILE_STRING': 'Default', 'HADOOP_HOME': 'D:\\JAVAEE\\hadoop-2.8.3', 'HOMEDRIVE': 'C:', 'HOMEPATH': '\\Users\\123', 'IDEA_INITIAL_DIRECTORY': 'C:\\Users\\123\\Desktop', 'INTELLIJ IDEA': 'E:\\Develop_tools\\IntelliJ IDEA 2020.3\\bin;', 'JAVA_HOME': 'C:\\Program Files\\Java\\JDK8', 'LOCALAPPDATA': 'C:\\Users\\123\\AppData\\Local', 'LOGONSERVER': '\\\\LAPTOP-AV5TB0BF', 'NUMBER_OF_PROCESSORS': '8', 'ONEDRIVE': 'C:\\Users\\123\\OneDrive', 'OS': 'Windows_NT', 'PATH': 'D:\\Code\\PyCode\\chaney02\\venv\\Scripts;E:\\Develop_tools\\Xftp\\;E:Develop_tools\\XShell\\;C:\\Program Files (x86)\\Common Files\\Oracle\\Java\\javapath;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\Program Files (x86)\\NVIDIA Corporation\\PhysX\\Common;C:\\Program Files\\NVIDIA Corporation\\NVIDIA NvDLISR;C:\\Program Files\\Java\\JDK8\\bin;C:\\Program Files\\Java\\JDK8\\jre\\bin;D:\\JAVAEE\\hadoop-2.8.3\\bin;E:\\Develop_tools\\Python3.7;E:\\Application\\QQ\\Bin;E:\\Application\\WeChat;E:\\Develop_tools\\MySQL5.5\\bin;E:\\Develop_tools\\Xftp7\\;E:\\Develop_tools\\XShell\\;E:\\Develop_tools\\Python3.7\\Scripts\\;E:\\Develop_tools\\Python3.7;C:\\Users\\123\\AppData\\Local\\Microsoft\\WindowsApps;E:\\Develop_tools\\PyCharm 2019.3.5\\bin;;E:\\Develop_tools\\WebStorm 2020.3\\bin;;E:\\Develop_tools\\IntelliJ IDEA 2020.3\\bin;;E:\\Develop_tools\\PyCharm 2020.3\\bin;;E:\\Develop_tools\\DataGrip 2020.3\\bin;;', 'PATHEXT': '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC', 'PROCESSOR_ARCHITECTURE': 'x86', 'PROCESSOR_ARCHITEW6432': 'AMD64', 'PROCESSOR_IDENTIFIER': 'Intel64 Family 6 Model 142 Stepping 12, GenuineIntel', 'PROCESSOR_LEVEL': '6', 'PROCESSOR_REVISION': '8e0c', 'PROGRAMDATA': 'C:\\ProgramData', 'PROGRAMFILES': 'C:\\Program Files (x86)', 'PROGRAMFILES(X86)': 'C:\\Program Files (x86)', 'PROGRAMW6432': 'C:\\Program Files', 'PROMPT': '(venv) $P$G', 'PSMODULEPATH': 'C:\\Program Files\\WindowsPowerShell\\Modules;C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\Modules', 'PUBLIC': 'C:\\Users\\Public', 'PYCHARM': 'E:\\Develop_tools\\PyCharm 2020.3\\bin;', 'PYCHARM PROFESSIONAL EDITION WITH ANACONDA PLUGIN': 'E:\\Develop_tools\\PyCharm 2019.3.5\\bin;', 'PYCHARM_DISPLAY_PORT': '63342', 'PYCHARM_HOSTED': '1', 'PYTHONIOENCODING': 'GBK', 'PYTHONPATH': 'D:\\Code\\PyCode\\chaney02;E:\\Develop_tools\\JetBrains\\PyCharm 2019.3.5\\plugins\\python\\helpers\\pycharm_matplotlib_backend;E:\\Develop_tools\\JetBrains\\PyCharm 2019.3.5\\plugins\\python\\helpers\\pycharm_display', 'PYTHONUNBUFFERED': '1', 'SESSIONNAME': 'Console', 'SYSTEMDRIVE': 'C:', 'SYSTEMROOT': 'C:\\Windows', 'TEMP': 'C:\\Users\\123\\AppData\\Local\\Temp', 'TMP': 'C:\\Users\\123\\AppData\\Local\\Temp', 'USERDOMAIN': 'LAPTOP-AV5TB0BF', 'USERDOMAIN_ROAMINGPROFILE': 'LAPTOP-AV5TB0BF', 'USERNAME': '123', 'USERPROFILE': 'C:\\Users\\123', 'VBOX_MSI_INSTALL_PATH': 'E:\\Develop_tools\\VirtualBox\\', 'VIRTUAL_ENV': 'D:\\Code\\PyCode\\chaney02\\venv', 'WEBSTORM': 'E:\\Develop_tools\\WebStorm 2020.3\\bin;', 'WINDIR': 'C:\\Windows', '_OLD_VIRTUAL_PATH': 'E:\\Develop_tools\\Xftp\\;E:Develop_tools\\XShell\\;C:\\Program Files (x86)\\Common Files\\Oracle\\Java\\javapath;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\Program Files (x86)\\NVIDIA Corporation\\PhysX\\Common;C:\\Program Files\\NVIDIA Corporation\\NVIDIA NvDLISR;C:\\Program Files\\Java\\JDK8\\bin;C:\\Program Files\\Java\\JDK8\\jre\\bin;D:\\JAVAEE\\hadoop-2.8.3\\bin;E:\\Develop_tools\\Python3.7;E:\\Application\\QQ\\Bin;E:\\Application\\WeChat;E:\\Develop_tools\\MySQL5.5\\bin;E:\\Develop_tools\\Xftp7\\;E:\\Develop_tools\\XShell\\;E:\\Develop_tools\\Python3.7\\Scripts\\;E:\\Develop_tools\\Python3.7;C:\\Users\\123\\AppData\\Local\\Microsoft\\WindowsApps;E:\\Develop_tools\\PyCharm 2019.3.5\\bin;;E:\\Develop_tools\\WebStorm 2020.3\\bin;;E:\\Develop_tools\\IntelliJ IDEA 2020.3\\bin;;E:\\Develop_tools\\PyCharm 2020.3\\bin;;E:\\Develop_tools\\DataGrip 2020.3\\bin;;', '_OLD_VIRTUAL_PROMPT': '$P$G'})
03.os模块.py
True
a\b\c