time,sys,os模块
1.time模块
a:结构化时间:struct_time:通过time.localtime获取到一个时间对象,通过这个对象得到对象属性
****localtime()如果没有参数,默认返回是一个时间对象,如果有参数,必须为数字类型,
obj = time.localtime()
print(obj)
print(obj.tm_year,end=" ")
print(obj.tm_mon,end=" ")
print(obj.tm_hour,end=" ")
print(obj.tm_min,end=" ")
#输出结果:
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=8, tm_hour=15, tm_min=3, tm_sec=17, tm_wday=2, tm_yday=220, tm_isdst=0) 2018 8 15 3
#从上图可以看出:结构化输出结果有索引值:索引对应内容如下表:
索引(时间对象) | 属性(attribute) | 值(value) |
0 | 年time_year | 四位数 |
1 | 月time_mon | 1~12 |
2 | 日time_mday | 1~31 |
3 | 时time_hour | 0~23 |
4 | 分time_min | 0~59 |
5 | 秒time_sec | 0~59 |
6 | 星期几time_wday | 索引从0开始 |
7 | 一种的第几天time_yday | 1~366 |
b:格式化时间:strftime,把时间转成字符串格式,对象:人,可以接收结构化时间对象;strftime(format,t)
格式化中format的符号意义:
%Y|%y | 四位数|两位数表示年份 |
%m | 月份 |
%d | 天 |
%H | 24小时制小时数 |
%I | 12小时制小时 |
%M | 分钟数 |
%S | 秒 |
%a | 简化星期名称(wed) |
%A | 完整星期名称 |
%b | 简化月份名 |
%B | 完整月份名 |
%c | 日期加时间表示 |
%j | 年内的一天 |
%p | 查看上午还是下午 |
%U | 一年中的星期数,0~53 |
%w | 星期0~6,星期天表示开始 |
%x | 本地相应的日期表示 |
%X | 本地相应的时间显示 |
%z | 当前时区的名称 |
%% | % |
c:时间戳时间Timestamp
1)学名格林威治,类型为float类型;对象:机器
格式:time.time()获取当前时间时间戳;
2.os模块
a:os模块是和操作系统交互的,而sys模块是和Python解释器交互的;
b:和目录相关的
1)os.getcwd()在什么地方执行,得到值也就是路径也会随着改变;
2)os.chdir()强制修改路径,配合getcwd使用就会一直得到你想要的路径;
3)os.curdir()返回当前目录:('.')
4)os.pardir()返回当前目录的父目录字符串名('..')
c;创建文件夹/删除文件夹
1)os.mkdir('文件名')在当前路径下创建一个新文件夹
2)os.mkedirs('多级文件夹名')用/分隔符;当前目录下创建文件夹组,父目录为第一位;
如果重复执行会报一个文件夹已存在的错,这时要加上一个参数,exist_ok=True,
3)os.rmdir()不能删除一个非空的文件夹;
4)os.removedirs()递归向上,知道要删除的目录有文件了停下;把最后一级的文件先删掉;
5)os.listdir(文件路径)得到当前任意文件下一级的所有文件和文件夹;copy path
d:几个小工具:
1)os.stat(path)查看文件当前的状态,有两个属性可以用到,st_atime上一次访问时间,和st_mtime最后一次修改时间
2)os.sep查看当前你所在的操作系统分隔符; win(\) mac和Linux(/)
3)os.name查看当前字符串指示使用的平台, win ->'nt' linux ->'posix'
一段跨平台的小思想:
base_path = 'D:\sylar\python_workspace'
s = 'day25'
print(os.sep.join([base_path,s])) #os.sep表示系统的分割符,把两个文件路径拼接,然后操作;
e:os.path系列
1)os.path.abspath(path),有返回值,返回path的当前系统的格式,绝对路径;
2)os.path.split(path),有返回值,返回类型tuple,会自动帮你把最后一个元素提取出来;
3)os.path.dirname(path),有返回值,字符串类型,会自动取split元组中的第一位; os.path.basename()取第二位
4)os.path.isfile(path),返回True或False,判断是否是文件
6)os.path.isdir(path),判断是否是文件夹
7)os.path.join(path)根据你的系统自动添加成规范格式;
8)os.path.getsize(文件)计算文件的大小,文件夹大小4096定值;
import sys
import os
base_path = os.path.dirname(os.path.dirname(__file__))
#往上找两级(自动除去路径最后一位)
course = '/'.join([base_path,'db','course_data'])
ident = '/'.join([base_path,'db','iden_data'])
#这是解决文件路径问题的
思想:建立一个配置文件,先用__file__找出当前目录的路径,
然后用dirname取到共同目录下;在拼接路径;
3.sys模块
a:sys.argv #执行文件的时候,写在Python命令后面的第一个值,
之后的元素,在执行Python的时候 后面可以写多个值,都会依次添加到argv的列表中
b:sys.exit(n) #退出程序,正常退出为0,异常退出n为1
c:sys.path #返回模块的搜索路径,初始化时使用Pythonpath环境变量的值;
time,sys,os模块的更多相关文章
- sys,os,模块-正则表达式
# *__conding:utf-8__* """"我是注释""" sys,os模块 import sysimport os pr ...
- day2_python的数据类型,sys,os模块,编码解码,列表,字典
今天主要了解了python的数据类型,sys,os模块,编码解码,列表,字典 1.数据类型:int(python3没有长整型)文本总是Unicode,str表示二进制用byte类表示布尔型:True( ...
- time random sys os 模块
时间模块 在Python中,通常有这三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串: (1)时间戳(timestamp) :通常来说,时间戳表示的是从1970年1月1日 ...
- python 常用模块(一): random , time , sys , os模块部分知识.
1.常用模块:(1)collectiaons模块 (2)与时间相关 time模块 (3)random模块 (4)os模块 (5)sys模块 (6) 序列化模块: json , pickle 2 ...
- time,sys,os 模块
import time# 时间戳时间,格林威治时间,float数据类型 给机器用的 # 英国伦敦的时间 1970.1.1 0:0:0 # 北京时间 1970.1.1 8:0:0 # 153369312 ...
- time | sys | os 模块,递归删除文件,项目分析
一,复习 ''' 1.跨文件夹导包 - 不用考虑包的情况下直接导入文件夹(包)下的具体模块 2.__name__: py自执行 '__main__' | py被导入执行 '模块名' 3.包:一系列模块 ...
- day18 python模块 random time sys os模块
day18 python 一.random模块 取随机整数 import random print(random.randint(1,2)) #顾头顾尾 p ...
- python学习Day27--time模块、sys模块、os模块和序列化模块
[知识点] 1.时间模块: (1)时间戳时间,格林威治时间,float数据类型 英国伦敦的时间:1970.1.1 0:0:0 北京时间:1970.1.1 8:0:0 (2)结构化时间, ...
- sys模块和os模块,利用sys模块生成进度条
sys模块import sysprint(sys.argv)#sys.exit(0) #退出程序,正常退出exit(0)print(sys.version) #获取 ...
随机推荐
- lua正则表达式替换字符串
local _t = {} _t.name = "Li" local str = string.gsub("hahah---[name]----[age]--xrz-&q ...
- STM32 USB开发(三) 基于F105RBT6核心板开发的自定义HID收发(FS)
硬件设计 该核心板的USB插口有两个,一个是用于USB Slave的,可以用来做HID设备,把模拟STM32模拟为U盘等:另一个是USB Host设备,可以对插上的U盘的数据进行读写. 图中J2是Mi ...
- IP地址转换函数——inet_pton inet_ntop inet_aton inet_addr inet_ntoa
inet_pton NAME inet_pton - 将 IPv4 和 IPv6 地址从点分十进制转换为二进制 SYNOPSIS #include <arpa/inet.h> in ...
- 从零构建vue项目(三)--vue常用插件
一.直接拉取的模板中,package.json如下: { "name": "vuecli2-test", "version": " ...
- 第十三周学习总结 Java的异常
java的核心思想 面向对象的编程思想 类和类的关系 类中成员的描述 对象创建 Java工具类 包装类 数学相关 日期相关 字符串相关 集合相关的类 考试机 学生 老师 --------------- ...
- OSPF与ACL 综合应用
1.企业内网运行OSPF路由协议,区域规划如图所示:2.财务和研发所在的区域不受其他区域链路不稳定性影响:3.R1.R2.R3只允许被IT登录管理:4.YF和CW之间不能互通,但都可以与IT互通:5. ...
- [DS+Algo] 009 树的介绍
目录 1. 树的概念 2. 树的术语 3. 树的种类 4. 常见应用场景 5. 二叉树 1. 树的概念 每个结点(节点)有 0 个或多个子结点 没有父结点的结点称为根结点 每一个非根结点有且只有一个父 ...
- 05: jwt原理&使用
1.1 COOKIE使用和优缺点 参考博客:https://baijiahao.baidu.com/s?id=1608021814182894637&wfr=spider&for= ...
- bootstrap使用总结(导航在carousel居中之上)
在导航中想实现这样 carousel 在底部,导航条在上面中间,div结构为以下 <div class="navbar-wrapper"style="width: ...
- .net WebApi使用swagger 美化接口文档
本文将一步步演示如何用swagger美化WebApi接口文档,为接口文档添加接口名称说明,为请求参数和返回数据结构字段含义添加注释说明 一.为WebApi项目安装Swagger 首先我们新建一个Web ...