Erlo

Python 常用系统模块整理

时间:2019-01-11 22:02   阅读:28次   来源:博客园页面报错

点赞 打赏

×打赏

支付宝

微信

Python中的常用的系统模块中部分函数等的整理

random
randint(start, end) 返回一个随机整数x(start<=x<=end)
uniform(start, end) 返回一个随机浮点数x(start<=x<=end)
choice(seq) 从序列seq中返回随机的元素
sample(seq, n) 从序列seq中选择n个随机且独立的元素
random() 用于生成一个0到1的随机符点数

 

sys: 系统相关的
path 搜索模块的路径(列表)
version_info.major python版本
getsizeof(name) 返回 name 变量的内存使用量

 

os: 系统相关的
文件/目录相关
getcwd() 返回当前工作目录
chdir(path) 改变工作目录
listdir(path='.') 列举指定目录中的文件名('.'表示当前目录,'..'表示上一级目录)
mkdir(path) 创建单层目录,如该目录已存在抛出异常
makedirs(path) 递归创建多层目录,如该目录已存在抛出异常
remove(path) 删除文件
rmdir(path) 删除单层目录,如该目录非空则抛出异常
removedirs(path) 递归删除目录,从子目录到父目录逐层尝试删除,遇到目录非空则抛出异常
rename(old, new) 将文件old重命名为new
system(command) 运行系统的shell命令
popen(cmd, mode='r', buffering=-1) 运行系统的shell命令,返回对象需要 read(),且需要 close()
startfile(path) 使用与文件格式相关联的程序打开文件
walk(top) 遍历top路径以下所有的子目录,返回一个三元组: (路径, [包含目录], [包含文件])
getlogin() 返回当前登录的用户名
environ 系统中定义的环境变量,返回一个 dicht 字典对象
curdir 指代当前目录('.')
pardir 指代上一级目录('..')
sep 输出操作系统特定的路径分隔符(Win下为'',Linux下为'/')
linesep 当前平台使用的行终止符(Win下为'rn',Linux下为'n')
name 指代当前使用的操作系统(包括: 'posix',  'nt', 'mac', 'os2', 'ce', 'java')
path: 包含与路径相关的一些函数, 有以下模块
basename(path) 去掉目录路径,单独返回文件名
dirname(path) 去掉文件名,单独返回目录路径
join(path1[, path2[, ...]]) 将path1, path2各部分组合成一个路径名
split(path) 分割文件名与路径,返回(f_path, f_name)元组。如果完全使用目录,它也会将最后一个目录作为文件名分离,且不会判断文件或者目录是否存在
splitext(path) 分离文件名与扩展名,返回(f_name, f_extension)元组
getsize(file) 返回指定文件的尺寸,单位是字节
getatime(file) 返回指定文件最近的访问时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算)
getctime(file) 返回指定文件的创建时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算)
getmtime(file) 返回指定文件最新的修改时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算)
exists(path) 判断指定路径(目录或文件)是否存在
isabs(path) 判断指定路径是否为绝对路径
isdir(path) 判断指定路径是否存在且是一个目录
isfile(path) 判断指定路径是否存在且是一个文件
islink(path) 判断指定路径是否存在且是一个符号链接(快捷方式)
ismount(path) 判断指定路径是否存在且是一个挂载点(盘符)
samefile(path1, paht2) 判断path1和path2两个路径是否指向同一个文件
多任务相关
fork() 复制当前进程,在子进程中返回0,在父进程中返回紫禁城pid, Linux下使用
getpid() 返回当前进程的pid
getppid() 返回父进程id
exit() 终止当前进程

 

subprocess: 执行新的进程
check_output(command, stderr=subprocess.STDOUT, shell=True)  运行shell命令,返回结果 
call(args, *,shell=False, cwd=None, timeout=None)  运行指定命令(shell=True 执行shell命令) 

 

multiprocessing: 进程相关

 

threading: 线程相关

 

pickle: 将对象转换成二进制文件
dump(data,file)  data是待存储的数据对象,file是目标存储的文件对象(要用'wb'的模式open文件) 
load(file)  将二进制文件转换成对象(要用'rb'的模式open文件) 

 

time: 时间
altzone  返回格林威治西部的夏令时地区的偏移秒数;如果该地区在格林威治东部会返回负值(如西欧,包括英国);对夏令时启用地区才能使用。 
timezone  time.timezone 属性是当地时区(未启动夏令时)距离格林威治的偏移秒数(美洲 >0;大部分欧洲,亚洲,非洲 <= 0) 
tzname  属性是包含两个字符串的元组: 第一是当地非夏令时区的名称,第二个是当地的 DST 时区的名称。 
asctime([t])  接受时间元组并返回一个可读的形式为"Tue Dec 11 18:07:14 2015"(2015年12月11日 周二 18时07分14秒)的 24 个字符的字符串。 
clock() 

用以浮点数计算的秒数返回当前的 CPU 时间。用来衡量不同程序的耗时,比 time.time() 更有用。
Python 3.3 以后不被推荐,由于该方法依赖操作系统,建议使用 perf_counter() 或 process_time() 代替(一个返回系统运行时间,一个返回进程运行时间,请按照实际需求选择)

ctime([secs])  作用相当于 asctime(localtime(secs)),未给参数相当于 asctime() 
daylight  如果夏令时被定义,则该值为非零。 
gmtime([secs])  接收时间辍(1970 纪元年后经过的浮点秒数)并返回格林威治天文时间下的时间元组 t(注: t.tm_isdst 始终为 0) 
localtime([secs]) 

接收时间辍(1970 纪元年后经过的浮点秒数)并返回当地时间下的时间元组 t(t.tm_isdst 可取 0 或 1,取决于当地当时是不是夏令时)
返回的时间元组:

  • 索引值(Index)属性(Attribute) 值(Values)
  • 0 tm_year(年) (例如: 2015)
  • 1 tm_mon(月) 1 ~ 12
  • 2 tm_mday(日) 1 ~ 31
  • 3 tm_hour(时) 0 ~ 23
  • 4 tm_min(分) 0 ~ 59
  • 5 tm_sec(秒) 0 ~ 61(见下方注1)
  • 6 tm_wday(星期几) 0 ~ 6(0 表示星期一)
  • 7 tm_yday(一年中的第几天) 1 ~ 366
  • 8 tm_isdst(是否为夏令时) 0, 1, -1(-1 代表夏令时) 
mktime(t)  接受时间元组并返回时间辍(1970纪元后经过的浮点秒数) 
perf_counter()  返回计时器的精准时间(系统的运行时间),包含整个系统的睡眠时间。由于返回值的基准点是未定义的,所以,只有连续调用的结果之间的差才是有效的。 
process_time() 返回当前进程执行 CPU 的时间总和,不包含睡眠时间。由于返回值的基准点是未定义的,所以,只有连续调用的结果之间的差才是有效的。
sleep(secs) 推迟调用线程的运行,secs 的单位是秒。
strftime(format[, t])

把一个代表时间的元组或者 struct_time(如由 time.localtime() 和 time.gmtime() 返回)转化为格式化的时间字符串。如果 t 未指定,将传入 time.localtime()。如果元组中任何一个元素越界,将会抛出 ValueError 异常。
format格式: (字符串)

  • %a 本地(locale)简化星期名称
  • %A 本地完整星期名称
  • %b 本地简化月份名称
  • %B 本地完整月份名称
  • %c 本地相应的日期和时间表示(04/07/10 10:43:39)
  • %d 一个月中的第几天(01 - 31)
  • %f 微秒(0 - 999999)
  • %H 一天中的第几个小时(24 小时制,00 - 23)
  • %I 一天中的第几个小时(12 小时制,01 - 12)
  • %j 一年中的第几天(001 - 366)
  • %m 月份(01 - 12)
  • %M 分钟数(00 - 59)
  • %p 本地 am 或者 pm 的相应符,只有与“%I”配合使用才有效果。
  • %S 秒(01 - 61)
  • %U 一年中的星期数(00 - 53 星期天是一个星期的开始)第一个星期天之前的所有天数都放在第 0 周, 当使用 strptime() 函数时,只有当在这年中的周数和天数被确定的时候才会被计算。
  • %w 一个星期中的第几天(0 - 6,0 是星期天), 当使用 strptime() 函数时,只有当在这年中的周数和天数被确定的时候才会被计算。
  • %W 和 %U 基本相同,不同的是 %W 以星期一为一个星期的开始
  • %x 本地相应日期(04/07/10)
  • %X 本地相应时间(10:43:39)
  • %y 去掉世纪的年份(00 - 99)
  • %Y 完整的年份
  • %z 用 +HHMM 或 -HHMM 表示距离格林威治的时区偏移(H 代表十进制的小时数,M 代表十进制的分钟数)
  • %Z 时区的名字(如果是本地时间为空字符)
  • %% %号本身
strptime(string[, format]) 把一个格式化时间字符串转化为 struct_time。实际上它和 strftime() 是逆操作。
time() 返回当前时间的时间戳(1970 纪元年后经过的浮点秒数)

 

datetime: 基本的日期和时间类型

 

timeit: 准确测量小段代码的执行时间

 

urllib: 访问网络的包

http.cookielib: 主要作用是提供可存储cookie的对象

socket: 套接字相关模块,处于网路的传输层

getopt 

 

configparser: 配置文件操作的模块

 

re: 正则表达式

itertools: 产生不同类型迭代器 

logging: 日志模块

tkinter: 一个窗口模块 

来源:https://www.erlo.vip/share/27/27640.html
下一篇:Django与多个数据库交互

相关推荐

提交留言

评论留言

还没有评论留言,赶紧来抢楼吧~~

Erlo大厅()

* 这里是“Erlo大厅”,在这发言所有人都可以看到。只保留当天信息

  • Erlo.vip2019-01-21 06:30:42Hello、欢迎使用Erlo大厅,这里是个吐槽的地方。
  • 首页 笔记分享 新闻资讯 ERLO 搜索
    鼠标试试
    返回顶部