博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python全栈开发 * 27知识点汇总 * 180710
阅读量:6706 次
发布时间:2019-06-25

本文共 7010 字,大约阅读时间需要 23 分钟。

27   time  os  sys  模块

time 模块 一.表示时间的三种方式  时间戳(timestamp), 元组(struct_time),格式化时间字符串(Format string)  小结:时间戳是计算机能够识别的时间;     时间字符串是人能够看懂的时间;     元组则是用来操作时间的 (一).时间戳(timestamp): 时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。 运行“type(time.time())”,返回的是float类型。 (二).元组(struct_time): struct_time元组共有9个元素   索引(Index)属性(Attribute)值(Values)         0  tm_year(年) 比如2011         1  tm_mon(月)  1 - 12         2  tm_mday(日) 1 - 31         3  tm_hour(时) 0 - 23         4  tm_min(分)  0 - 59         5  tm_sec(秒)  0 - 60         6  tm_wday(weekday)   0 - 6(0表示周一)         7  tm_yday(一年中的第几天)   1 - 366         8  tm_isdst(是否是夏令时)   默认为0 (三).格式化时间字符串(Format string)  "1999-12-06"     print(time.strftime("%Y-%m-%d %H:%M:%S"))     #  2018-07-10 21:04:30     print(time.strftime("%x %X"))                 #  07/10/18 21:09:39     print(time.strftime("%Y-%m-%d %X"))           #  2018-07-10 21:03:18 1.python中时间日期格式化符号:         %y 两位数的年份表示(00-99)         %Y 四位数的年份表示(000-9999)         %m 月份(01-12)         %d 月内中的一天(0-31)         %H 24小时制小时数(0-23)         %I 12小时制小时数(01-12)         %M 分钟数(00=59)         %S 秒(00-59)         %a 本地简化星期名称         %A 本地完整星期名称         %b 本地简化的月份名称         %B 本地完整的月份名称         %c 本地相应的日期表示和时间表示         %j 年内的一天(001-366)         %p 本地A.M.或P.M.的等价符         %U 一年中的星期数(00-53)星期天为星期的开始         %w 星期(0-6),星期天为星期的开始         %W 一年中的星期数(00-53)星期一为星期的开始         %x 本地相应的日期表示         %X 本地相应的时间表示         %Z 当前时区的名称         %% %号本身 二.三种格式之前的转化 1.格式化转结构化        #   time.strptime(时间字符串,字符串对应格式)     import time     ft=time.strftime("%Y-%m-%d %H:%M:%S")     struct_time=time.strptime(ft,"%Y-%m-%d %H:%M:%S")     print(struct_time) 2.结构化时间转时间戳    #   time.mktime(结构化时间) import time     ft=time.strftime("%Y-%m-%d %H:%M:%S")     struct_time=time.strptime(ft,"%Y-%m-%d %H:%M:%S")     print(struct_time)     time_stamp=time.mktime(struct_time)     print(time_stamp) 3.时间戳转结构化      # time.localtime(时间戳)  import time     time_stamp=time.time()     struct_time=time.localtime(time_stamp)     print(struct_time) 4.结构化转格式化     #  time.strftime( 格式定义,结构化时间) import time     time_stamp=time.time()     struct_time=time.localtime(time_stamp)     print(struct_time)     ft=time.strftime("%Y-%m-%d %H:%M:%S",struct_time)     print(ft)   练习   申请 博客园的时间 2017年6月7日 18:50:50      利用time模块,距现在 过了多少年,多个月,多少日,多少小时,多少分多少秒.         import time         time_old=time.mktime(time.strptime("2017-03-16 18:06:07","%Y-%m-%d %H:%M:%S"))         # print(time.strptime("2017-03-16 18:06:07","%Y-%m-%d %H:%M:%S"))         time_now=time.mktime(time.strptime("2018-07-10 18:06:07","%Y-%m-%d %H:%M:%S"))         d_time=time_now-time_old         struct_time=time.localtime(d_time)         print(struct_time)         print("过去了%d年%d月%d天%d小时%d分钟%d秒" %(struct_time.tm_year-1970,struct_time.tm_mon-1,struct_time.tm_mday-1,                                           struct_time.tm_hour, struct_time.tm_min, struct_time.tm_sec)) 三.特殊转化 1.时间戳转格式化时间字符串 ft=time.ctime(时间戳) 如果不传参数,直接返回当前时间的格式化串           结果 星期  月份  日   时  分 秒 年 2.结构化时间转特殊格式化时间   ft=time.asctime(结构化时间) 如果不传参数,直接返回当前时间的格式化串       结果 星期  月份  日   时  分 秒 年 OS模块  与操作系统交互的一个接口 一.相关定义 1,路径:     (1)相对路径 : 相对于当前文件所在的位置 (         从当前文件夹找到另一个文件夹中的内容  往外走 ../ ;eg: ..(08)/..(a)/b         从当前往内走 :  直接加文件夹名字  f/文件夹名         同级 : f/文件名/文件名     (2)绝对路径 : 从磁盘根目录寻找文件     ( C:///   或  http:///  ) 2.文件名  名称+ " .py " 3.工作目录 ,父级目录(当前目录): 本文件所在的文件夹的绝对路径 二.执行当前这个py文件的工作目录相关的工作路径 *print(os.getcwd())    #   C:\课后作业\27    获取当前文件的工作目录     print(os.chdir())     #   改变当前脚本工作目录     print(os.curdir)      #   .      返回当前目录     print(os.pardir)         #    ..   返回上上级目录 三.和文件夹相关    import os     # os.mkdir("文件夹1")                  # 生成单级目录     # os.mkdir("文件夹1\文件2")            # 文件已存在可以创建子目录     # os.makedirs("dirname1\\dirname2/dirname3\\dirname4")     #可生成多层递归目录     # os.rmdir("文件夹1/文件夹2")          #  删除文件夹2  删除单级空目录,若目录不为空则无法删除,  ( 只能是文件夹,不能是文件)  删除文件夹2     # os.removedirs("dirname1\\dirname2/dirname3\\dirname4")     # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推     print(os.listdir("C:\课后作业\\27"))     #['27练习.py', 'dirname.py', 'dirname1', '文件夹1']   (仅限第一级)     print(os.listdir("C:\课后作业\\27\\dirname1"))     #   ['dirname2'] 四.和文件相关  import os     # os.remove("文件夹1\文件一.py")     #   删除文件夹1下的文件一,py   只能删除文件,不能删除文件夹     # os.remove("文件夹2")               #   拒绝访文件夹2     # os.rename('文件夹2\文件6.py',"文件夹2\文件8.py")     #重命名可以作用于文件夹和文件     os.rename("文件夹2",'文件夹6')            #     更换成文件夹6 五.和操作系统差异相关 如果项目凌驾于不同的操作系统,可能需要 转化 # win: E:\sylar\python_workspace\day27 # linux: E:/sylar/python_workspace/day27 import os     1.print(os.sep)        # win : \    Linux下为"/"     2. print(os.linesep)    # win : \t\n Linux下为"\n"     3. print(os.pathsep)    #  win : ;  Linux下为:     4.print(os.name)         # win : nt  Linux->'posix' 六.执行系统命令相关 .如果项目凌驾于不同的操作系统,可能需要    import os     1.os.system('dir')     #  (exec)  没有返回值     2.ret=os.popen("dir").read()  #   (eval )  有返回值         print(ret)     3.print(os.environ)      #获取系统环境变量 七.path系列  与路径相关    import os     print(os.path.abspath("dirname1"))     #   C:\课后作业\27\dirname1    通过文件名获取文件的绝对路径.     print(os.path.split("C:\课后作业\\27\dirname1" )) #('C:\\课后作业\\27', 'dirname1')  得到  元组(当前目录,文件名)     print(os.path.dirname('C:\课后作业\\27\dirname1')) #  C:\课后作业\27    通过绝对路径获取工作目录     print(os.path.basename("C:\课后作业\\27\dirname1"))   #dirname1   通过绝对路径返回文件名  返回path最后的文件名。                                                             # 如果path以/或\结尾,那么就会返回空值,即     print(os.path.exists("C:\课后作业\\27\dirname1"))   #True   如果path存在,返回True;如果path不存在,返回False     print(os.path.isabs("C:\课后作业\\27\dirname1"))    #True     print(os.path.isfile("C:\课后作业\\27\dirname1"))    # False  如果path是一个存在的文件,返回True。否则返回False     print(os.path.isdir("C:\课后作业\\27\dirname1"))     # True  如果path是一个存在的目录,则返回True。否则返回False     print(os.path.join("C:\课后作业\\27\\dirname1","27练习.py","文件夹6"))   #C:\课后作业\27\dirname1\27练习.py\文件夹6     print(os.path.getatime("C:\课后作业\\27\dirname1"))  #1531271740.862077  返回path所指向的文件或者目录的最后访问时间     print(os.path.getmtime("C:\课后作业\\27\dirname1"))  #1531271740.862077  返回path所指向的文件或者目录的最后修改时间     print(os.path.getsize("C:\课后作业\\27\\27练习.py"))   #  8731 字节 os.stat('path/filename')  获取文件/目录信息 的结构说明 stat 结构: st_mode: inode 保护模式 st_ino: inode 节点号。 st_dev: inode 驻留的设备。 st_nlink: inode 的链接数。 st_uid: 所有者的用户ID。 st_gid: 所有者的组ID。 st_size: 普通文件以字节为单位的大小;包含等待某些特殊文件的数据。 st_atime: 上次访问的时间。 st_mtime: 最后一次修改的时间。 st_ctime: 由操作系统报告的"ctime"。在某些系统上(如Unix)是最新的元数据更改的时间,             在其它系统上(如Windows)是创建时间(详细信息参见平台的文档)。 sys 模块   import sys     1.print(sys.platform)   #win32   操作系统的名字     2.print(sys.version)     #3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)]  Py解释器的版本.     3.print(sys.path)       #模块查询的顺序     4.print(sys.exit())   #结束python解释器   退出程序,正常退出时exit(0),错误退出sys.exit(1)     5.print(sys.argv)   #  ['C:/课后作业/27/27练习.py']    列表里面是路径     第一个元素是程序本身路径         sys.argv=['C:/课后作业/27/27练习.py',"alex","alex3714"]         if sys.argv[1] == 'alex' and sys.argv[2] =='alex3714':                 print('启动mysql')

转载于:https://www.cnblogs.com/J-7-H-2-F-7/p/9294282.html

你可能感兴趣的文章
强强联手-赛迪中科数据中心联合实验室应运而生
查看>>
Web应用防火墙:必须拥有还是面临淘汰?
查看>>
码农的性能测试
查看>>
微软孵化平台筑“巢”南京
查看>>
我的第一个物联网项目:一份企业物联网项目指南
查看>>
安防迎来5G时代来临 是机遇还是挑战?
查看>>
中情局黑客武器库曝光,苹果安卓加密系统均被突破
查看>>
对Gogo不满 微软也来掺和飞机WiFi服务
查看>>
diy高手在民间
查看>>
国产IT彪起来了,后浪要将前浪拍死在沙滩上
查看>>
安防软件系统集成解决方案 想说爱你不容易
查看>>
《Tableau数据可视化实战》——1.7节连接其他数据库
查看>>
《C语言解惑》—— 1.1 中文字符以假乱真
查看>>
《Cisco局域网交换机配置手册(第2版•修订版)》一导读
查看>>
《Linux内核修炼之道》——1.3 获取内核源码
查看>>
阿里云前端周刊 - 第 12 期
查看>>
GNOME 3.26 将对控制中心进行大改进
查看>>
《CCNP ROUTE (642-902 )认证考试指南》一第1章 CCNP考试中的规划任务
查看>>
名落孙山之后, Edge 浏览器发布一大波新功能
查看>>
《Adobe Illustrator CS6中文版经典教程(彩色版)》—第1课1.13节查看图稿
查看>>