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) #获取 ...
随机推荐
- (转载)gcc编译选项总结
转载自:https://blog.csdn.net/gatieme/article/details/21389603 常用编译选项 gcc and g++分别是gnu的c & c++编译器 g ...
- 图——图的Floyd法最短路径实现
1,Dijkstra 算法一次性求得起始顶点到所有其它顶点的最短路径,如果想要求解任意两个顶点之间的最短路径,可将图中顶点作为起始顶点执行 n 次 Dijkstra 算法就可以了: 2,可能解决方案: ...
- 2015GDCPC广东省赛总结
第二年参加省赛,也是我接触ACM这个行列已经过去了一年有余的里程碑.省赛个人排位,直到省赛现场赛结束后这段时间确实学到了很多很多的东西.按照惯例,先讲下比赛过程,题目3人分,我前,盛爷 ...
- KMP解决最小循环节问题
# 10035. 「一本通 2.1 练习 1」Power Strings [题目描述] 给定若干个长度 $\le 10^6$ 的字符串,询问每个字符串最多是由多少个相同的子字符串重复连接而成的.如 ...
- 探索ASP.Net Core 3.0系列二:聊聊ASP.Net Core 3.0 中的Startup.cs
原文:探索ASP.Net Core 3.0系列二:聊聊ASP.Net Core 3.0 中的Startup.cs 前言:.NET Core 3.0 SDK包含比以前版本更多的现成模板. 在本文中,我将 ...
- 纯手写实现ajax分页功能
前言 最近用到了这个功能,百度大半天,网上的不是有各种问题就是需要引入其他的插件,无奈,只能自己写,大致功能已经完成.前端页面用bootstrap做样式,分页功能用ajax实现,没用其他插件哦,只引入 ...
- Java web项目搭建系列之二 Jetty下运行项目
在项目pom.xml文件中添加Jetty运行配置 在pom.xml文件project节点下插入如下代码: <build> <plugins> <plugin> &l ...
- [转]0day零距离
前言: 想起这个话题,还要从早年网上的一则新闻说起--"美国联邦官员于2001年12月11日宣布,已破获一起以因特网为犯罪手段的特大软件盗版案--盗版软件的总价值至少高达10亿美元.据悉,该 ...
- moc_XXXX.o:(.data.rel.ro._ZTI12CalculatorUI[_ZTI12CalculatorUI]+0x10): undefined reference to `typeinfo for QWidget' collect2: error: ld returned 1 exit status make: *** [Makefile:144: myCalculator]
main.cpp:(.text.startup+0x22): undefined reference to `QApplication::QApplication(int&, char**, ...
- GUI学习之二十八—QMessageBox
今天来学习下QMessageBox. QMessageBox主要用来通知用户或者请求用户提问和接收应答一个模态对话框. 一.对话框的构成 图标是有标准图标的,可以直接调用. 我们声明的消息框,初始状态 ...