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调用windows api锁定计算机示例
Apr 17 Python
介绍Python的@property装饰器的用法
Apr 28 Python
构建Python包的五个简单准则简介
Jun 15 Python
Python及PyCharm下载与安装教程
Nov 18 Python
Django admin美化插件suit使用示例
Dec 12 Python
Python单元测试实例详解
May 25 Python
python使用Plotly绘图工具绘制水平条形图
Mar 25 Python
使用python写的opencv实时监测和解析二维码和条形码
Aug 14 Python
python使用numpy实现直方图反向投影示例
Jan 17 Python
使用Python合成图片的实现代码(图片添加个性化文本,图片上叠加其他图片)
Apr 30 Python
python实点云分割k-means(sklearn)详解
May 28 Python
python数据抓取3种方法总结
Feb 07 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
摩卡咖啡
2021/03/03 咖啡文化
PHP XML数据解析代码
2010/05/26 PHP
2014年10个最佳的PHP图像操作库
2014/07/14 PHP
php组合排序简单实现方法
2016/10/15 PHP
基于PHP实现用户登录注册功能的详细教程
2020/08/04 PHP
用XMLDOM和ADODB.Stream实现base64编码解码实现代码
2010/11/28 Javascript
jquery中文乱码的多种解决方法
2013/06/21 Javascript
jQuery:delegate中select()不起作用的解决方法(实例讲解)
2014/01/26 Javascript
jquery ajax 局部刷新小案例
2014/02/08 Javascript
多引号嵌套的变量命名的问题
2014/05/09 Javascript
Jquery 效果使用详解
2015/11/23 Javascript
jQuery实现按比例缩放图片的方法
2017/04/29 jQuery
vue脚手架搭建项目的兼容性配置详解
2018/07/17 Javascript
JS canvas绘制五子棋的棋盘
2020/05/28 Javascript
详解单页面路由工程使用微信分享及二次分享解决方案
2019/02/22 Javascript
vue.js实现会动的简历(包含底部导航功能,编辑功能)
2019/04/08 Javascript
如何在JavaScript中创建具有多个空格的字符串?
2020/02/23 Javascript
删除目录下相同文件的python代码(逐级优化)
2012/05/25 Python
Python使用SocketServer模块编写基本服务器程序的教程
2016/07/12 Python
Python中datetime模块参考手册
2017/01/13 Python
Python中第三方库Requests库的高级用法详解
2017/03/12 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
2018/01/30 Python
python简单贪吃蛇开发
2019/01/28 Python
使用TensorFlow实现二分类的方法示例
2019/02/05 Python
Python和Sublime整合过程图示
2019/12/25 Python
Python TCPServer 多线程多客户端通信的实现
2019/12/31 Python
阿玛尼美妆加拿大官方商城:Giorgio Armani Beauty加拿大
2017/10/24 全球购物
Java基础知识面试题
2014/03/25 面试题
年终自我鉴定
2013/10/09 职场文书
优秀管理者获奖感言
2014/02/17 职场文书
简历里的自我评价范文
2014/02/24 职场文书
2014年单位法制宣传日活动总结
2014/11/01 职场文书
医者仁心观后感
2015/06/17 职场文书
中学音乐课教学反思
2016/02/18 职场文书
高中英语教学反思范文
2016/03/02 职场文书
公司会议开幕词
2016/03/03 职场文书