Python之OS模块

os模块就是对操作系统进行操作,使用该模块必须先导入模块:
查看环境变量、操作系统名及Home、及系统环境变量

import os
print('path环境变量:',os.environ)
print('操作系统名:',os.environ['os'])
print('HOME:',os.environ)

测试结果如下图所示:

查看home路径

print('HOME路径:',os.path.expanduser('~'))

测试结果如下图所示:

列出用户目录的文件列表

#列表
print(os.listdir())
#列出用户目录的文件列表
print(os.listdir(os.path.expanduser('~')))
for d in os.listdir(os.path.expanduser('~')):
    print(d)

测试结果如下图所示:
打印当前路径、创建文件夹及打印文件列表

print(os.getcwd())
os.mkdir('a')
os.listdir()
#移除文件夹
#os.rmdir('zy')

测试结果如下图所示:

文件夹列表

os.listdir()

测试结果如下图所示:

os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。
该方法是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。

for root, dirs, files in os.walk(".", topdown=False):
    for name in files:
        print(os.path.join(root, name))
    for name in dirs:
        print(os.path.join(root, name))

测试结果如下图所示:

打印出用户路径、用户名、及路径的切分等等

print(os.path.expanduser('~'))
print(os.path.basename(os.path.expanduser('~')))
print(os.path.dirname(os.path.expanduser('~')))
print(os.path.splitext(os.path.expanduser('~')))
print(os.path.splitext('b.txt'))
print(os.path.split('C:\\Users\\Public'))

测试结果如下图所示:

测试文件大小

#dir效果模拟
import time
from time import strftime
def getSizeInString(filesize):
    result=''
    if filesize//1024//1024//1024//1024>0:
        result=str(filesize//1024//1024//1024//1024)+'T'
    elif filesize//1024//1024//1024>0:
        result=str(filesize//1024//1024//1024)+'G'
    elif filesize//1024//1024>0:
        result=str(filesize//1024//1024)+'M'
    else:
        result=str(filesize)+'b'
    return result
getSizeInString(1024*1024+2)  #测试方法

测试结果如下图所示:

输出文件的目录列表及文件、目录的总数

filecount=0
dircount=0
for item in os.listdir():
    fileATime=os.path.getatime(  item  )
    timeString=strftime("%Y-%m-%d %H:%M:%S",time.localtime(fileATime))+'\t'
    filetypestr='\t'
    filesizestring='\t'
    if os.path.isdir(item)==True:
        filetypestr='<DIR>\t'
        dircount+=1
    else:
        filecount+=1
        filesize=os.path.getsize(item)
        filesizestring=getSizeInString(filesize)+'\t'
        
    print(timeString,filetypestr,filesizestring,os.path.basename(item)) 
print('文件数:',str(filecount),'目录数:',str(dircount))    

测试结果如下图所示:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值