Python基础之os模块简介

在平常工做中,常常须要用到操做系统,以及文件目录相关的内容,属于系统运维相关的必备知识点,本文主要简述Python中与os模块及os.path模块相关内容,仅供学习分享使用,若有不足之处,还请指正。linux

导入os模块

os模块是Python的内置标准库,提供了一种使用与操做系统相关的功能的便捷式途径。若是须要调用os模块,须要经过import的方式导入,以下所示:windows

1 import os
2 import os.path

os模块系统命令

在os模块中,与操做系统相关的经常使用方法,以下所示:运维

 os模块获取环境变量,以下所示:学习

 1 path1 = os.getenv('path') # 获取环境变量
 2 path2 = path1.split(sep=';')
 3 for p in path2:
 4     print(p)
 5 
 6 os1 = os.getenv('OS')  #  获取 操做系统名
 7 print(os1)
 8 
 9 username = os.getenv('USERNAME')  #  获取 登陆帐号名
10 print(username)

os模块调用操做系统命令,示例以下所示:ui

1 os.system('notepad')  #  调用window相关命令
2 
3 os.system('ping www.baidu.com')  # 调用ping命令
4 
5 os.system('ipconfig')  # 调用ipconfig命令
6 
7 os.system('cmd') #  打开命令行窗口

经过startfile方式启动文件,示例以下所示:spa

1 os.startfile(path=r"D:\Program Files (x86)\Notepad++\notepad++.exe") # 打开文件

操做系统名称,分隔符,换行符相关内容,示例以下所示:操作系统

1 name = os.name # 返回操做系统名称 windows-->nt  linux,uninx-->posix
2 print(name)
3 
4 sep = os.sep  # 分隔符 \
5 print(sep)
6 
7 linesep = os.linesep  #  换行符
8 print(repr(linesep))  # windows--> '\r\n'  linux-->\n

注意事项,若是在操做命令行输出时,出现乱码状况,以下所示:命令行

 

 则能够设置File-->Settings-->File Encodings-->Global Encoding 为GBK来解决,设置完毕后,从新执行,乱码问题解决,以下所示:code

 os模块文件操做

在os模块中,与文件相关的经常使用方法,以下所示:对象

 获取文件的全部属性(包括文件大小,建立时间,修改时间,访问时间等),以下所示:

1 # os.stat_result(st_mode=33206, st_ino=844424930288389, st_dev=44815083, st_nlink=1, st_uid=0, st_gid=0, st_size=1931, st_atime=1625411990, st_mtime=1625411889, st_ctime=1625405477)
2 osstat = os.stat('login.py')  #  获取文件的全部信息,返回的对象类型
3 print(osstat)

os模块目录操做

在os模块中,与目录相关的经常使用方法,以下所示:

 os模块下,与模块相关的经常使用方法,示例以下所示:

 1 cwd = os.getcwd()  # 获取当前工做目录,不带最后的\
 2 print(cwd)
 3 
 4 os.mkdir(path='movie')  # 建立目录
 5 
 6 os.makedirs(name='movie/gangtai')  # 建立多级目录
 7 
 8 # 返回目录下全部的内容
 9 files = os.listdir(path='D:\AiSmoking')
10 for file in files :
11     print(file)

os.path模块文件及目录操做

os.path模块属于os的子模块,其中与文件及目录相关的经常使用方法,以下所示:

 os.path模块下,与文件及目录相关的内容,以下所示:

 1 flag = os.path.exists(path='D:\AiSmoking\logs')  # 判断路径是否存在
 2 print(flag)
 3 p = os.path.abspath('moive') # 获取当前相对路径的绝对路径
 4 print(p)
 5 
 6 flag = os.path.isabs('movie')  # 判断当前路径是不是绝对路径
 7 print(flag)
 8 
 9 flag = os.path.isdir('movie') # 判断当前路径是否是一个目录
10 print(flag)
11 
12 flag = os.path.isfile('movie')  # 判断当前路径是否是一个文件
13 print(flag)
14 
15 real_path = os.path.realpath('合同')  # 获取真实路径
16 print(real_path)

备注

次北固山下

【做者】王湾  【朝代】唐

客路青山外,行舟绿水前。

潮平两岸阔,风正一帆悬。

海日生残夜,江春入旧年。

乡书何处达?归雁洛阳边。

相关文章
相关标签/搜索