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实现2014火车票查询代码分享
Jan 10 Python
Python 使用SMTP发送邮件的代码小结
Sep 21 Python
Python命令启动Web服务器实例详解
Feb 23 Python
Python 数据结构之旋转链表
Feb 25 Python
Python cookbook(数据结构与算法)将多个映射合并为单个映射的方法
Apr 19 Python
解决Spyder中图片显示太小的问题
Apr 27 Python
python异步存储数据详解
Mar 19 Python
安装Pycharm2019以及配置anconda教程的方法步骤
Nov 11 Python
在PyCharm中实现添加快捷模块
Feb 12 Python
Django 实现对已存在的model进行更改
Mar 28 Python
python中spy++的使用超详细教程
Jan 29 Python
python实现高效的遗传算法
Apr 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
PHP.MVC的模板标签系统(一)
2006/09/05 PHP
利用PHP制作简单的内容采集器的原理分析
2008/10/01 PHP
PHP之autoload运行机制实例分析
2014/08/28 PHP
PHP实现无限极分类图文教程
2014/11/25 PHP
浅谈php和js中json的编码和解码
2016/10/24 PHP
php利用gd库为图片添加水印
2016/11/09 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript第一课
2007/02/27 Javascript
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
2009/02/17 Javascript
JavaScript 验证浏览器是否支持javascript的方法小结
2009/05/17 Javascript
jquery validation验证身份证号,护照,电话号码,email(实例代码)
2013/11/06 Javascript
JavaScript获取某年某月的最后一天附截图
2014/06/23 Javascript
IE6-IE9中tbody的innerHTML不能赋值的解决方法
2014/09/26 Javascript
JQuery中DOM加载与事件执行实例分析
2015/06/13 Javascript
轻松掌握JavaScript装饰者模式
2016/08/27 Javascript
AngularJS实现与Java Web服务器交互操作示例【附demo源码下载】
2016/11/02 Javascript
Bootstrap table的使用方法
2016/11/02 Javascript
angular+ionic返回上一页并刷新页面
2017/08/08 Javascript
解决Jquery下拉框数据动态获取的问题
2018/01/25 jQuery
JSON基本语法及与JavaScript的异同实例分析
2019/01/04 Javascript
Vue项目路由刷新的实现代码
2019/04/17 Javascript
Python常用的文件及文件路径、目录操作方法汇总介绍
2015/05/21 Python
python删除列表内容
2015/08/04 Python
对Python的zip函数妙用,旋转矩阵详解
2018/12/13 Python
Python Django 前后端分离 API的方法
2019/08/28 Python
Python Selenium库的基本使用教程
2021/01/04 Python
数学专业毕业生自荐信
2013/11/10 职场文书
本科生的职业生涯规划范文
2014/01/09 职场文书
展会邀请函范文
2014/01/26 职场文书
经济国贸专业求职信
2014/06/18 职场文书
2014年教务处工作总结
2014/12/03 职场文书
二胎满月酒致辞
2015/07/29 职场文书
培训后的感想
2015/08/07 职场文书
Python中的min及返回最小值索引的操作
2021/05/10 Python
zabbix监控mysql的实例方法
2021/06/02 MySQL
使用RedisTemplat实现简单的分布式锁
2021/11/20 Redis