os模塊:
# 返回操作系統(tǒng)類(lèi)型,值為posix是linux操作系統(tǒng),值為nt是windows操作系統(tǒng)。
# print os.name
# 返回操作系統(tǒng)的詳細(xì)信息
# print os.uname()
# 返回系統(tǒng)的環(huán)境變量
# print os.environ或print os.environ.get('KEY值')
# 判斷是否是絕對(duì)路徑(不會(huì)判斷文件或目錄是否存在)
# print os.path.isabs('路徑')
# 生成絕對(duì)路徑
# print os.path.abspath('happy.jpg')
# print os.path.join('/home/kiosk/Desktop','happy.jpg')
# print os.path.join(os.path.abspath('.'),'happy.jpg')
# 獲取目錄名或文件名
# filename = '/home/kiosk/PycharmProjects/python/08'
# print os.path.basename(filename)
# print os.path.dirname(filename)
# 創(chuàng)建目錄/刪除目錄
# os.mkdir('img')
# os.makedirs('img/file')
# os.rmdir('img')
# 創(chuàng)建文件/刪除文件
# os.mknod('westos.txt')
# os.remove('westos.txt')
# os.mknod('westos.txt')
# 文件的重命名
# os.rename('westos.txt','data.txt')
# 判斷文件或者目錄是否存在
# print os.path.exists('data.txt')
# print os.path.exists('hello.txt')
# 分離后綴名和文件名
# print os.path.splitext('data.txt')
# 將目錄名和文件名分離:
print os.path.split('/tmp/hello/hello.png')
例題練習(xí):
1.在當(dāng)前目錄新建目錄img,里面包含多個(gè)文件,文件名個(gè)不相同(X4G5.png)
2.將當(dāng)前img目錄所有以.png結(jié)尾的后綴名改為.jpg
import os
import random
import string
def gen_code(len=4):
li = random.sample(string.ascii_letters + string.digits, len)
return ''.join(li)
def create_file():
li = {gen_code() for i in range(100)}
os.mkdir('img')
for name in li:
os.mknod('img/' + name + '.png')
def modify_suffix(dirname, old_suffix, new_suffix):
"""
:param dirname: 所要操作的目錄
:param old_suffix: 之前文件的后綴
:param new_suffix: 新文件的后綴
:return:
"""
if os.path.exists(dirname):
pngfile = [filename for filename in os.listdir(dirname) if filename.endswith(old_suffix)]
basefile = [os.path.splitext(filename)[0] for filename in pngfile]
print basefile
for filename in basefile:
oldname = os.path.join(dirname,filename + old_suffix)
newname = os.path.join(dirname,filename + new_suffix)
os.rename(oldname,newname)
print '%s重命名%s成功' %(oldname,newname)
else:
print '%s不存在不能操作'% dirname
modify_suffix('img','.png','.jpg')