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


Posted in Python onJanuary 07, 2020

本文实例讲述了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的主要区别是前者返回值是脚本的退出状态码,后者的返回值是脚本执行过程中的存储输出内容的一个文件描述符。

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

附:

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

详情:https://3water.com/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从ftp下载数据保存实例
Nov 20 Python
举例讲解Python设计模式编程中的访问者与观察者模式
Jan 26 Python
python安装教程
Feb 28 Python
Python 中的Selenium异常处理实例代码
May 03 Python
Python3实现计算两个数组的交集算法示例
Apr 03 Python
python 判断文件还是文件夹的简单实例
Jun 10 Python
利用Python进行图像的加法,图像混合(附代码)
Jul 14 Python
python3中替换python2中cmp函数的实现
Aug 20 Python
Pytorch Tensor基本数学运算详解
Dec 30 Python
Python+OpenCV实现图像的全景拼接
Mar 05 Python
Python接口自动化测试框架运行原理及流程
Nov 30 Python
python_tkinter事件类型详情
Mar 20 Python
python单例设计模式实现解析
Jan 07 #Python
Python字典生成式、集合生成式、生成器用法实例分析
Jan 07 #Python
linux环境下安装python虚拟环境及注意事项
Jan 07 #Python
Python包,__init__.py功能与用法分析
Jan 07 #Python
Python3实现发送邮件和发送短信验证码功能
Jan 07 #Python
Python模块的定义,模块的导入,__name__用法实例分析
Jan 07 #Python
python 微信好友特征数据分析及可视化
Jan 07 #Python
You might like
使用PHP计算两个路径的相对路径
2013/06/14 PHP
PHP实现获取图片颜色值的方法
2014/07/11 PHP
详解PHP中cookie和session的区别及cookie和session用法小结
2016/06/12 PHP
phpmyadmin下载、安装、配置教程
2017/05/16 PHP
PHP正则删除HTML代码中宽高样式的方法
2017/06/12 PHP
PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例
2018/03/31 PHP
javascript 避免闭包引发的问题
2009/03/17 Javascript
js解析与序列化json数据(三)json的解析探讨
2013/02/01 Javascript
js获取IP和PcName(IE)在vs中可用
2013/08/02 Javascript
Jquery焦点与失去焦点示例应用
2014/06/10 Javascript
js实现3D图片逐张轮播幻灯片特效代码分享
2015/09/09 Javascript
javascript同步服务器时间和同步倒计时小技巧
2015/09/24 Javascript
jquery ztree异步搜索(搜叶子)实践
2016/02/25 Javascript
一个用jquery写的判断div滚动条到底部的方法【推荐】
2016/04/29 Javascript
全面解析Bootstrap中tooltip、popover的使用方法
2016/06/13 Javascript
微信小程序picker组件简单用法示例【附demo源码下载】
2017/12/05 Javascript
jQuery实现的下雪动画效果示例【附源码下载】
2018/02/02 jQuery
一分钟学会JavaScript中的try-catch
2020/12/14 Javascript
linux下安装easy_install的方法
2013/02/10 Python
Python实例之wxpython中Frame使用方法
2014/06/09 Python
python MySQLdb Windows下安装教程及问题解决方法
2015/05/09 Python
python实现八大排序算法(1)
2017/09/14 Python
python批量识别图片指定区域文字内容
2019/04/30 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
线程安全及Python中的GIL原理分析
2019/10/29 Python
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
2019/12/13 Python
python主要用于哪些方向
2020/07/05 Python
通过实例解析Python RPC实现原理及方法
2020/07/07 Python
Python基于unittest实现测试用例执行
2020/11/25 Python
Python实现石头剪刀布游戏
2021/01/20 Python
阳光体育:Sunny Sports(购买露营和远足设备)
2018/08/07 全球购物
回门宴答谢词
2014/01/13 职场文书
党的群众路线教育实践活动学习计划
2014/11/03 职场文书
2014年企业党支部工作总结
2014/12/04 职场文书
关于nginx 实现jira反向代理的问题
2021/09/25 Servers
nginx 配置缓存
2022/05/11 Servers