杨记

碎片化学习令人焦虑,系统化学习使人进步

0%

Python常用模块

Python常用模块的常用方法,如:os,shutil,datetime,time,random,sys

Python的os模块和shutil模块下包含了大量进行文件I/O的函数和方法,使用这些函数能很方便的读取、写入文件。

os.path模块主要用于文件的属性获取,如exists()函数判断该目录是否存在,getsize()函数来获取文件大小,等等。

全局函数open()可打开文件,并采取多种方式来读取文本内容。

Python还提供了tempfile模块来创建临时文件和临时目录,tempfile模块下的高级API会自动管理临时文件的创建和删除;当程序不再使用临时文件和临时目录时,程序会自动删除临时文件和临时目录。

os模块

Python os.path模块

os.path模块主要用于文件的属性获取

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
os模块的主要方法
os.sep 取代操作系统特定的路径分隔符
os.name 指示正在使用的工作平台。比如对于Windows,它是 'nt' ,而对于 Linux/UNIX 用户,它是 'posix'
os.getcwd() 得到当前工作目录,及当前Python脚本工作的目录路径
os.linesep 给出当前平台的行终止符。例如,Windows使用 '\r\n' ,Linux使用 '\n',而Mac使用 '\r'
os.getenv() 读取环境变量
os.putenv() 设置环境变量
os.listdir() 返回指定目录下的所有文件和目录名
os.walk(top, topdown=Ture, onerror=None, followlinks=False) 遍历文件夹下所有文件
os.remove(file) 删除一个文件
os.stat(file) 获得文件属性
os.chmod(file) 修改文件权限和时间戳
os.mkdir(name) 创建目录
os.makedirs(r“C:\Python\test”) 创建多级目录
os.rmdir(path) 删除目录,必须是空的
os.mknod("test.txt") 创建文件,Windows不能用
os.chdir("path") 转换目录,换路径
os.removedirs(path) 删除多个目录
os.rename("oldname","newname") 重命名文件(目录),文件或目录都是使用这条命令
os.system() 运行shell命令
os.exit() 终止当前进程

os.path模块常用方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
os.path.abspath(path)	返回path规范化的绝对路径
os.path.split(path) 将path分割成目录和文件名二元组返回
os.path.dirname(path) 返回path的目录,就是os.path.split(path)的第一个元素
os.path.basename(path) 返回path最后的文件名。如果path以 / 或 \ 结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.commonprefix(list) 返回list中,所有path共有的最长路径
os.path.exists(path) 如果path存在,返回TRUE;如果path不存在,返回False
os.path.isabs(path) 如果path是绝对路径,返回True
os.path.isfile(path) 如果path是一个存在的文件,返回True,否则返回False
os.path.isdir(path) 如果path是一个存在的目录,返回True,否则返回False
os.path.join(path1[,path2[,...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.normacase(path) 在Linux和Mac平台上,该函数会原样返回path,在Windows平台上会将路径中的所有字符转换为小写,并将所有斜杠转换为反斜杠
os.path.normpath(path) 规范化路径
os.path.splitdrive(path) 返回(drivername,fpath)元组
os.path.splitext(path) 分离文件名与扩展名;默认返回(fname,fextension)元组,可做分片操作
os.path.getsize(path) 返回path的文件的大小(字节)
os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path) 返回path所指向的文件或目录的最后修改时间

shutil模块

shutil模块的主要方法

1
2
3
4
5
shutil.rmtree(path)						删除文件夹及其所有内容
shutil.copyfile("oldfile","newfile") 复制文件,oldfile和newfile都只能是文件
shutil.copy("oldfile","newfile") oldfile只能是文件夹,newfile可以是文件,可以是目标目录
shutil.copytree("olddir","newdir") 复制文件夹。olddir和newdir都只能是目录,且newdir必须不存在
shutil.move("oldpos","newpos") 移动文件(目录)

time&datetime

导入模块:

import time,datetime

主要函数说明如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
time.clock():以浮点数计算秒数,返回程序运行的时间

time.sleep(seconds):程序休眠seconds再执行下面的语句

time.time():返回一个浮点型数据

time.gmtime(时间戳):把时间戳转成格林尼治时间,返回一个时间元组

time.lobaltime(时间戳):把时间戳转成本地时间,返回一个时间元组(如中国时区,加8个小时)

time.mktime(时间元组):将时间元组转成时间戳,返回一个浮点数

time.asctime(时间元组):将时间元组转成一个字符串

time.ctime(时间戳):将时间戳转成一个字符串

time.strftime(format,时间元组):将时间元组转成指定格式的字符串

time.strptime(字符串,format):将指定格式的字符串转成时间元组

datetime.datetime.now():获取系统当前时间

datetime.datetime(参数列表):获取指定时间

datetime.strftime("%Y-%m-%d"):将时间转换为字符串

random

导入模块

import random

主要函数说明如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
random.choice(列表/元组/字符串):在列表或者元组中随机挑选一个元素,若是字符串则随机挑选一个字符

random.randrange([start,end),step):返回一个从[start,end)并且步长为step的一个随机数。若start不写,默认为0。多数情况下step不写,默认为1,但是end一定要有

random.random():返回一个[0,1)的随机数,结果是一个浮点数

num4=random.random()

random.shuffle(列表):将序列中所有的元素进行随机排序,直接操作序列“序列发生变化”,无返回值

random.uniform(m,n):随机产生一个[m,n]的浮点数

random.randint(m,n):随机产生一个[m,n]的整数

sys

导入模块:

import sys

主要函数说明如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
sys.argv:命令行参数List,第一个元素是程序本身的路径

sys.exit(n):退出程序,正常退出是exit(0)

sys.version:获取Python解释程序的版本信息

sys.path:返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值

sys.platform:返回操作系统平台名称

sys.modules.keys():返回所有已经导入的模块列表

sys.exc_info():获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息

sys.maxsize:最大的Int值

sys.maxunicode:最大的Unicode值

sys.modules:返回系统导入的模块字段,key是模块名,value是模块

sys.stdout:标准输出

sys.stdin:标准输入

sys.stderr:错误输出

欢迎关注我的其它发布渠道