python中的几大模块一

python中的几大模块一

os模块

os模块是python标准库中的一个用于访问操作系统功能的模块,使用os模块中提供的接口,可以实现跨平台访问。主要用于三个方面:

  • 获取平台信息
  • 对目录进行操作
  • 判断操作

1.系统操作

函数 功能
os.sep 获取系统路径的分隔符 (获取属性)
os.name 查看正在使用的工作平台(获取属性)
os.getenv('path') 读取环境变量(调用方法)
os.getcwd() 获取当前文件的路径(绝对路径)(调用方法)
import os

print(os.sep)
print(os.name)
print(os.getenv('PATH'))
print(os.getcwd())
输出:
\
nt
C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;
C:\Users\Administrator\Desktop

2.目录操作-增删查改

调用方法 功能及说明
os.listdir() 返回指定目录下的所有文件和目录名 (返回一个list类)
os.mkdir() 创建一个目录。只创建一个目录文件
os.rmdir() 删除一个目录。若目录中包含文件则无法删除
os.makedirs(dirname) 递归生成多层目录。若所有目录均存在,则创建失败
od.removedirs(dirname) 递归删除多层目录。若存在一个目录中包含文件,则删除失败
os.chdir() 改变当前文件目录,到指定目录中 参数为指定目录
os.rename('旧名','新名字') 重命名当前文件或目录

当我利用os.mkdir('./practice')指令时,可以在当前目录创建一个名为practice的空目录文件

当我想利用os.remove('./practice')进行删除操作时候,会报错’practice 拒绝访问‘ 此时利用os.rmdir()方法时候,可进行删除

import os
os.redir('./practice')

3.os.path模块

方法 功能及说明
os.path.abspath(path) 返回path在当前系统中的绝对路径
os.path.normpath(path) 归一化path的表示形式,统一用\\分割
os.poath.relpath(path) 返回当前程序与文件之间的相对路径
os.path.dirname(path) 返回path中的目录名称
os.path.basename(path) 返回path中的文件名称
os.path.join(path,*paths) 组合path与paths,返回一个路径字符串
os.path.exists(path) 判断对应路径是否存在目录或文件,返回True或者False
os.isfile(path) 判断对应路径是否为文件,返回True或者False
os.path.isdir(path) 判断对应路径是否为目录,返回True或者False
os.path.getatime(path) 返回对应文件或者目录的上一次访问时间
os.path.getmtime(path) 返回对应文件或者目录的上一次修改时间
os.path.getctime(path) 返回对应文件或者目录的上一次创建时间
os.path.getsize(path) 访问对应路径的文件的大小,以字节为单位

os的字库path库也是一个标准库,包含了非常强大的功能,在以后的编程中说不定都能用上,希望自己还是能够都记下来。除此之外,os库还有几个涉及到进程管理的方法。

方法 功能及说明
os.getlogin() 获取当前系统的登录用户名
os.cpu_count() 获得当前系统cpu数量
os.urandom(n) 获得n字节的随机字符串
os.system() 调用系统的终端(在windows中调用cmd终端)

给出一道题目:

​ 编写一个程序 :

​ 1.能在当前目录下查找文件名包含指定字符串的文件

​ 2.打印出其绝对路径

这里我给出我目前的答案,暂时还不知道是否存在漏洞。

import os
sub_dir='sql.py'
cur_dir=os.getcwd()
print(cur_dir)
if os.path.exists(os.path.join(cur_dir,sub_dir)):
    path=os.path.abspath(sub_dir)
    print(path)

os模块在我看来是一个非常强大的模块,它的功能目前我还不能非常熟练的使用,只能目前将这些使用方法暂时记录下来,以后还需慢慢熟练。

猜你喜欢

转载自www.cnblogs.com/magicdata/p/12185027.html