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