os库的使用

os.getcwd()         获得当前文件路径

eg:p = os.getcwd()          p为当前文件夹的路径

os.mkdir(path)/os.mkdirs(path)         新建一个文件夹

eg:os.mkdir(path="/home/rui/PycharmProjects/pythonProject/li")
在/home/rui/PycharmProjects/pythonProject地址下新建一个文件夹liz

注意:

路径名前面最好加r,防止'\n'误读为转义字符

eg:os.mkdir(path=r"/home/rui/PycharmProjects/pythonProject/li")

 os.mkdir(path),他的功能是一级一级的创建目录,前提是前面的目录已存在,如果不存在会报异常,比较麻烦,但是存在即有他的道理,当你的目录是根据文件名动态创建的时候,你会发现他虽然繁琐但是很有保障,不会因为你的一时手抖,创建而创建了双层或者多层错误路径。

os.makedirs(path),单从写法上就能猜出他的区别,他可以一次创建多级目录,哪怕中间目录不存在也能正常的(替你)创建,想想都可怕,万一你中间目录写错一个单词.........

import os
 
os.mkdir('d:\hello')    #  正常
os.mkdir('d:\hello\hi') #  正常
 
#  如果d:\hello目录不存在
#  则os.mkdir('d:\hello\hi')执行失败
import os
 
os.makedirs('d:\hello')    #  正常
os.makedirs('d:\hello\hi') #  正常
 
#  如果d:\hello目录不存在
#  则os.mkdir('d:\hello\hi')  #  仍然正常

os.rmdir(path)         删除一个文件夹

eg:os.rmdir(path="/home/rui/PycharmProjects/pythonProject/li")

删除文件夹li

os.path.isdir(path)        函数判断某一路径是否为目录, 

if not os.path.isdir(save_dir):
	os.makedirs(save_dir)
#如果文件夹不存在,创建文件夹

 

os.path.isfile(path)        函数判断某一路径是否为文件,

eg:if os.path.isfile(path)

os.listdir(path)        获得路径下的所有文件和文件夹名称

os.path.splitext(path)

os.path.splitext(path):将路径的文件名和后缀名分割。其中文件名只是名称。
path指一个文件的路径(相对路径或者绝对路径)作为参数:
1.1 如果给出的是一个目录和文件名,则输出路径的文件名称和后缀;
1.2 如果给出的是一个目录名,则输出路径和空后缀;

import os
file_path = "D:/test/data_expand/192.168.1.70_01_20210901163745710_250_150_4...jpg"
filename,extension = os.path.splitext(file_path)
print("filename:",filename)   # D:/test/data_expand/192.168.1.70_01_20210901163745710_250_150_4..
print("extension:",extension) # .jpg

file_path ="D:/test/data_expand/"
filename,extension = os.path.splitext(file_path)
print("filename:",filename)         # D:/test/data_expand/
print("extension:",extension)       # 空文件后缀

os.path.basename(path):返回path最后的文件名。如果path以 / 或 \ 结尾,那么就会返回空值。

import os
path1 = 'aaa/bbb/ccc'
path2 = 'aaa/bbb/ccc/'

print(os.path.basename(path1))      #输出ccc
print(os.path.basename(path2))      #输出空

os.getenv()   获取环境变量键的值(存在),否则返回默认值

用法:

os.getenv(key, default = None)
  • key:表示环境变量名称的字符串
  • default (可选):表示 key 不存在时默认值的字符串。如果省略,则默认设置为“无”。default可以为任何类型,如字符串,整型
import os 
key = 'HOME'
value = os.getenv(key)  
print("Value of 'HOME' environment variable :", value) 
#如果key存在,输出 Value of ‘HOME’ environment variable : /home/ihritik
#如果key不存在,输出 Value of ‘HOME’ environment variable : None


import os   
key = 'home'
value = os.getenv(key, "value does not exist")   
print("Value of 'home' environment variable :", value) 
#如果key不存在,输出 Value of ‘home’ environment variable : value does not exist

os.sep

python是跨平台的。在Windows上,文件的路径分隔符是'\',在Linux上是'/'。
为了让代码在不同的平台上都能运行,那么路径应该写'\'还是'/'呢?
使用os.sep的话,就不用考虑这个了,os.sep根据你所处的平台,自动采用相应的分隔符号。 

data_dir = os.sep.join(['hello', 'world'])
hello/world或者hello\world

Linux系统某个路径,/usr/share/python,那么上面的os.sep就是‘/’
windows系统某个路径,C:\Users\Public\Desktop,那么上面的os.sep就是‘\’.

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值