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获得一个月有多少天的方法
Jun 04 Python
Python2.x利用commands模块执行Linux shell命令
Mar 11 Python
python中numpy包使用教程之数组和相关操作详解
Jul 30 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
Apr 02 Python
Python虚拟环境的原理及使用详解
Jul 02 Python
Java文件与类动手动脑实例详解
Nov 10 Python
Python实现元素等待代码实例
Nov 11 Python
python 实现生成均匀分布的点
Dec 05 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
Aug 19 Python
python爬虫beautifulsoup解析html方法
Dec 07 Python
Django基础CBV装饰器和中间件
Mar 22 Python
宝塔更新Python及Flask项目的部署
Apr 11 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学习笔记之php文件操作
2016/06/03 PHP
浅谈PHP的exec()函数无返回值排查方法(必看)
2017/03/31 PHP
JSON PHP中,Json字符串反序列化成对象/数组的方法
2018/05/31 PHP
PHP使用Redis实现Session共享的实现示例
2019/05/12 PHP
JS和jquery获取各种屏幕的宽度和高度的代码
2013/08/02 Javascript
js(JavaScript)实现TAB标签切换效果的简单实例
2014/02/26 Javascript
JavaScript中的Math.SQRT1_2属性使用简介
2015/06/14 Javascript
JavaScript代码轻松实现网页内容禁止复制(代码简单)
2015/10/23 Javascript
Jquery判断form表单数据是否变化
2016/03/30 Javascript
纯JS代码实现一键分享功能
2016/04/20 Javascript
JS遍历对象属性的方法示例
2017/01/10 Javascript
promise处理多个相互依赖的异步请求(实例讲解)
2017/08/03 Javascript
JavaScript中使用参数个数实现重载功能
2017/09/01 Javascript
nodejs dgram模块广播+组播的实现示例
2019/11/04 NodeJs
javascript浅层克隆、深度克隆对比及实例解析
2020/02/09 Javascript
微信小程序开发之获取用户手机号码(php接口解密)
2020/05/17 Javascript
ES6对象操作实例详解
2020/05/23 Javascript
javascript操作向表格中动态加载数据
2020/08/27 Javascript
python文件读写操作与linux shell变量命令交互执行的方法
2015/01/14 Python
详解Django中的过滤器
2015/07/16 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
2015/11/04 Python
几种实用的pythonic语法实例代码
2018/02/24 Python
对Python 简单串口收发GUI界面的实例详解
2019/06/12 Python
Python超越函数积分运算以及绘图实现代码
2019/11/20 Python
基于python 等频分箱qcut问题的解决
2020/03/03 Python
基于python实现判断字符串是否数字算法
2020/07/10 Python
详解css3 flex弹性盒自动铺满写法
2020/09/17 HTML / CSS
房地产开盘策划方案
2014/02/10 职场文书
社区健康教育实施方案
2014/03/18 职场文书
我的画教学反思
2014/04/28 职场文书
教师自荐信范文
2015/03/06 职场文书
受欢迎的自荐信,就这么写!
2019/04/19 职场文书
公司年会主持词范文!
2019/05/07 职场文书
使用Oracle命令进行数据库备份与还原
2021/12/06 Oracle
千万级用户系统SQL调优实战分享
2022/03/03 MySQL
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android