Python常用模块sys,os,time,random功能与用法实例分析

所属分类: 脚本专栏 / python 阅读数: 493
收藏 0 赞 0 分享

本文实例讲述了Python常用模块sys,os,time,random功能与用法。分享给大家供大家参考,具体如下:

sys:

介绍:主要包含涉及python编译器与系统交互的函数。

常用函数:

import sys
print(sys.argv)#本文件名,已经运行该程序时的参数
#[如在命令窗口中python3 mysys.py 参数1 参数2]
#那么参数1为sys.argv[1],以此类推
print(sys.version)#python版本号
print(sys.path)#返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
# sys.exit(0)#中途退出程序,当参数非0时,会引发一个SystemExit异常

sys.stdout.write()#在屏幕中打印
sys.stdout.flush()#刷新标准缓冲区

os:

介绍:这个模块提供了一种方便的使用操作系统函数的方法。

常用函数:

import os
print("-------getcwd()获取当前目录-------")
print(os.getcwd())
print("-------chdir()改变当前所在目录-------")
# print(os.chdir("c://users"))#c:\\users  r'c:\users'
# print(os.getcwd())
print("------ . .. --------")
print(os.curdir)   #打印出 .
print(os.pardir)   #打印出 ..
print("-------makedirs递归创建目录-------")
#os.makedirs(r"c:\a\b\c")   #要创建c,如果a不存在则创建a,如果b不存在则创建b
print("-----remodir递归删除目录---------")
#os.removedirs(r"c:\a\b\c")  #清除空文件夹,从c到a,如果a,b也是空的话也会删除。
print("------mkdir创建目录--------")
# os.mkdir('c://a')
print("--------listdir列出指定目录下的所有文件和子目录------")
print(os.listdir())
print("--------remove删除文件------")
# print(os.remove('c://newfile'))
print("-------rename文件重命名-------")
# os.rename('oldname','newname')
print("-------stat 获取文件或目录信息-------")
print(os.stat('.'))
print("------sep 输出操作系统特点的路径分割符--------")
print(os.sep)
print("-----linesep 输出当前平台的行终止符---------")
list1=[]
list1.append(os.linesep)
print(list1)
print("------pathsep 输出用于分割文件的字符串--------")
print(os.pathsep)
print("----------name输出操作平台----------")
# print(os.name)#nt
print("-------system执行shell命令-------------")
print(os.system("dir"))
print("----------path关于文件和目录的操作----------")
# print(os.path.abspath(__file__))###返回绝对路径
print(os.path.split(os.path.abspath(__file__)))##将路径切割成目录名和文件名
print(os.path.dirname(os.path.abspath(__file__)))#只取路径名
print(os.path.dirname(__file__))###__file__是包括完整路径名的,也是绝对路径
print(os.path.basename(__file__))#只取文件名
print(os.path.exists("c://a"))#判断路径是否存在,不区分目录或文件
print(os.path.isabs(__file__))#判断是否是绝对路径
print(os.path.isfile("c://amd"))#判断是否是文件
print(os.path.join(r'c:',r'\a.txt'))#组合绝对路径
print("----------environ获取当前系统所有环境变量----------")
print(os.environ)
print("---------popen() 方法用于从一个命令打开一个管道-----------")
print(os.popen('dir').read())##主要用于处理执行命令的返回结果
print("获取进程号".center(50,'-'))
print(os.getpid())#获取当前进程号
print(os.getppid())#获取父进程号

注意:

os.system跟os.popen的主要区别是前者返回值是脚本的退出状态码,后者的返回值是脚本执行过程中的存储输出内容的一个文件描述符。

附:

subprocess模块是python从2.4版本开始引入的模块。主要用来取代 一些旧的模块方法,如os.system、os.spawn*、os.popen*、commands.*等。subprocess通过子进程来执行外部指令,并通过input/output/error管道,获取子进程的执行的返回信息。

详情:https://www.jb51.net/article/141847.htm

time:

介绍:包含关于时间的函数

常用函数:

import time
print("--------时间戳-------------")
print("时间戳time:",time.time())#时间戳time: 1516435471.756463
print("----------结构化时间(tm_year=2018, tm_mon=1.....-----------")
print("struct_time:",time.gmtime(time.time()))#tm_year=2018, tm_mon=1.........
print("timestamp->struct_time:",time.gmtime())#UTC时间
print("local_time:",time.localtime())#本地时区时间
print("struct_time->timstamp:",time.mktime(time.gmtime()))#结构化时间-->时间戳
print("----------ctime,asctime--------")
print("string_time:",time.ctime())###字符串时间 Mon Feb 5 01:02:06 2018
print("asctime:",time.asctime())###字符串时间 Mon Feb 5 01:02:06 2018
print("----------format_time格式化时间、struct_time-----------")
#结构化时间转格式化时间:%Y代表year,%m代表month,%d代表day, %H代表hour,%M代表minute,%S代表second
#只会取代%Y等字符,并不替换无对应意义的字符
print("struct_time -> format_time:\n", time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()))
y=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
#格式化时间转结构化时间
print("format_time -> struct_time:\n",time.strptime(y,"%Y-%m-%d %H:%M:%S"))
print("------------year--------------")
print("year:",time.localtime().tm_year)

random:

介绍:存储着关于“随机”的函数

常用函数:

import random
print("---------0到1,随机浮点值-----------")
print(random.random())
print("------------从范围中,随机取值,1<=x<=2--------")
print(random.randint(1,2))
print("------------从指定范围中,随机取值--------")
print(random.randrange(1,3))
print("------------从序列中,随机值--------")
print(random.choice("hello"))#从序列中随机取值
print(random.choice([0,11,3,99]))
print("------------从序列中,随机取指定个数值--------")
print(random.sample('heigo',2))#
print("------------随机取浮点值,start,end--------")
print(random.uniform(1,2))#start,end
print("-------洗牌,打乱排序-----")
l=[0,3,4,5,67,9]
random.shuffle(l)
print(l)

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

更多精彩内容其他人还在看

Python实现按学生年龄排序的实际问题详解

这篇文章主要给大家介绍了关于Python实现按学生年龄排序实际问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
收藏 0 赞 0 分享

Python开发的HTTP库requests详解

Requests是用Python语言编写,基于urllib,采用Apache2 Licensed开源协议的HTTP库。它比urllib更加方便,可以节约我们大量的工作,完全满足HTTP测试需求。Requests的哲学是以PEP 20 的习语为中心开发的,所以它比urllib更加P
收藏 0 赞 0 分享

Python网络爬虫与信息提取(实例讲解)

下面小编就为大家带来一篇Python网络爬虫与信息提取(实例讲解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

在python3环境下的Django中使用MySQL数据库的实例

下面小编就为大家带来一篇在python3环境下的Django中使用MySQL数据库的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Python 3.x读写csv文件中数字的方法示例

在我们日常开发中经常需要对csv文件进行读写,下面这篇文章主要给大家介绍了关于Python 3.x读写csv文件中数字的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
收藏 0 赞 0 分享

Python实现解析Bit Torrent种子文件内容的方法

这篇文章主要介绍了Python实现解析Bit Torrent种子文件内容的方法,结合实例形式分析了Python针对Torrent文件的读取与解析相关操作技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

Python实现文件内容批量追加的方法示例

这篇文章主要介绍了Python实现文件内容批量追加的方法,结合实例形式分析了Python文件的读写相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

Python简单实现自动删除目录下空文件夹的方法

这篇文章主要介绍了Python简单实现自动删除目录下空文件夹的方法,涉及Python针对文件与目录的读取、判断、删除等相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

简单学习Python多进程Multiprocessing

这篇文章主要和大家一起简单的学习Python多进程Multiprocessing ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Python导入模块时遇到的错误分析

这篇文章主要给大家详细解释了在Python处理导入模块的时候出现错误以及具体的情况分析,非常的详尽,有需要的小伙伴可以参考下
收藏 0 赞 0 分享
查看更多