python sys,os,time模块的使用(包括时间格式的各种转换)


Posted in Python onApril 27, 2018

sys模块

sys.argv: 实现从程序外部向程序传递参数。

位置参数argv[0]代表py文件本身,运行方法 python xx.py 参数1,参数2 。。

self = sys.argv[0]
name = sys.argv[1]
age = sys.argv[2]
print self, name, age

sys.getdefaultencoding(): 获取系统当前编码,一般默认为ascii。

print sys.getdefaultencoding()

sys.setdefaultencoding(): 设置系统默认编码,执行dir(sys)时不会看到这个方法,在解释器中执行不通过,可以先执行reload(sys),在执行 setdefaultencoding('utf8'),此时将系统默认编码设置为utf8。(python2.7中可能需要这么做)

reload(sys)
sys.setdefaultencoding('utf8')

sys.path: 获取指定模块搜索路径的字符串集合

sys.path

sys.platform: 获取当前系统平台。

print sys.platform

sys.exit()

功能:执行到主程序末尾,解释器自动退出,但是如果需要中途退出程序,可以调用sys.exit函数,带有一个可选的整数参数返回给调用它的程序,表示你可以在主程序中捕获对sys.exit的调用。(0是正常退出,其他为异常)'''

for i in range(1, 10):
print '第%s次:' % i, i
if i == 5:
print '第五次退出'
sys.exit(0)

os模块

1. os.name()——判断现在正在实用的平台,Windows 返回 ‘nt'; Linux 返回'posix'

print os.name()

2. os.getcwd()——得到当前工作的目录。

print os.getcwd()

3. os.listdir()——指定所有目录下所有的文件和目录名。

print os.listdir('.')

4. os.remove()——删除指定文件

os.remove('aaa.txt')

5. os.rmdir()——删除指定目录

os.rmdir('C://Users/xiaoxinsoso/Desktop/aaa')

6. os.mkdir()——创建目录,注意:这样只能建立一层,要想递归建立可用:os.makedirs()

os.makedirs('aaa/aaa')

7. os.path.isfile()——判断指定对象是否为文件。是返回True, 否则False

print os.path.isfile('ccc.txt')
print os.path.isfile('aaa')

8. os.path.isdir()——判断指定对象是否为目录。是True, 否则False。例:

print os.path.isdir('aaa')
print os.path.isdir('ccc.txt')

9. os.path.exists()——检验指定的对象是否存在。是True, 否则False.例:

print os.path.exists('bbb')
print os.path.exists('aaa')
print os.path.exists('ccc.txt')

10. os.path.split()——返回路径的目录和文件名。例:

print os.path.split('C://Users/xiaoxinsoso/Desktop/aaa/ccc.txt')

11. os.getcwd()——获得当前工作的目录

print os.getcwd()

12. os.system()——执行shell命令。

注意:此处运行shell命令时,如果要调用python之前的变量,可以用如下方式:

var = 123
os.environ['var'] = str(var) # 注意此处[]内得是 “字符串”
os.system('echo $var')

os.system('dir')

13. os.chdir()——改变目录到指定目录

14. os.path.getsize()——获得文件的大小,如果为目录,返回0

print os.path.getsize('ccc.txt')

15. os.path.abspath()——获得绝对路径。例:

print os.path.abspath('.')

16. os.path.join(path, name)——连接目录和文件名。例:

print os.path.join('c://user/xiaoxinsoso/', 'wenjian.txt')

17. os.path.basename(path)——返回文件名

print os.path.basename('ccc.txt')

18. os.path.dirname(path)——返回文件路径

print os.path.dirname('C://Users/xiaoxinsoso/Desktop/aaa/ccc.txt')

19. 获得程序所在的实际目录

if __name__ == "__main__":
print os.path.realpath(sys.argv[0])
print os.path.split(os.path.realpath(sys.argv[0]))
print os.path.split(os.path.realpath(sys.argv[0]))[0]

time模块

ticks = time.time()
print "当前时间戳为:", ticks

获取当前时间

localtime = time.localtime(time.time())
print "本地时间为 :", localtime

获取格式化的时间

localtime = time.asctime(time.localtime(time.time()))
print "本地时间为 :", localtime

格式化日期

格式化成2017-01-22 16:36:27形式

print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

格式化成Sun Jan 22 16:36:27 2017形式

print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())

将格式字符串转换为时间戳

a = "Sat Mar 28 22:24:24 2016"
print time.mktime(time.strptime(a, "%a %b %d %H:%M:%S %Y"))

获取某月日历

cal = calendar.month(2017, 1)
print "以下输出2016年1月份的日历:"
print cal

datetime模块

datetime类型时间

now = datetime.datetime.now()
print now
now = date time.datetime.now()
yes_time = now + date time.timedelta(days=-1) # 前一天的时间

datetime转string

strdatetime = now.strftime("%Y-%m-%d %H:%M:%S") # 以字符串形式显示时间,显示全部
strdatetime1= now.strftime("%Y-%m-%d") # 以字符串形式显示时间,只显示日期
print strdatetime
print strdatetime1

string转datetime

datetime1 = datetime.datetime.strptime(strdatetime1, "%Y-%m-%d")
print datetime1

datetime转时间戳

time_time = time.mktime(datetime1.timetuple())
print time_time

时间戳转string

time1 = time.strftime('%Y-%m-%d',time.localtime(time_time))
print time1

date转datetime

date1 = datetime.date(2012, 11, 19)
date = datetime.date.today()
print date
print datetime.datetime.strptime(str(date),'%Y-%m-%d') #将date转换为str,在由str转换为datetime
print datetime.datetime.strptime(str(date1),'%Y-%m-%d') #将date转换为str,在由str转换为datetime

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python类型强制转换long to int的代码
Feb 10 Python
Python守护进程用法实例分析
Jun 04 Python
Python IDE PyCharm的基本快捷键和配置简介
Nov 04 Python
Ubuntu 下 vim 搭建python 环境 配置
Jun 12 Python
python3.5+tesseract+adb实现西瓜视频或头脑王者辅助答题
Jan 17 Python
Python pandas.DataFrame 找出有空值的行
Sep 09 Python
Python aiohttp百万并发极限测试实例分析
Oct 26 Python
python调用函数、类和文件操作简单实例总结
Nov 29 Python
Python文本处理简单易懂方法解析
Dec 19 Python
python实现mean-shift聚类算法
Jun 10 Python
学python最电脑配置有要求么
Jul 05 Python
Django drf请求模块源码解析
Jun 08 Python
python读取文件名称生成list的方法
Apr 27 #Python
python实现图书馆研习室自动预约功能
Apr 27 #Python
Python实现去除列表中重复元素的方法小结【4种方法】
Apr 27 #Python
详解python多线程、锁、event事件机制的简单使用
Apr 27 #Python
Python Requests模拟登录实现图书馆座位自动预约
Apr 27 #Python
Python多线程中阻塞(join)与锁(Lock)使用误区解析
Apr 27 #Python
python队列queue模块详解
Apr 27 #Python
You might like
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
PHP 基于Yii框架中使用smarty模板的方法详解
2013/06/13 PHP
编译php 5.2.14+fpm+memcached(具体操作详解)
2013/06/18 PHP
php blowfish加密解密算法
2016/07/02 PHP
一个非常实用的php文件上传类
2017/07/04 PHP
Yii2框架实现利用mpdf创建pdf文件功能示例
2019/02/08 PHP
javascript 面向对象编程 聊聊对象的事
2009/09/17 Javascript
JavaScript 常用函数库详解
2009/10/21 Javascript
javascript中获取下个月一号,是星期几
2012/06/01 Javascript
增强用户体验友好性之jquery easyui window 窗口关闭时的提示
2012/06/22 Javascript
javascript弹出页面回传值的方法
2015/01/28 Javascript
详解js中构造流程图的核心技术JsPlumb
2015/12/08 Javascript
深入理解js函数的作用域与this指向
2016/05/28 Javascript
Angularjs实现mvvm式的选项卡示例代码
2016/09/08 Javascript
AngularJS实现进度条功能示例
2017/07/05 Javascript
全新打包工具parcel零配置vue开发脚手架
2018/01/11 Javascript
vue中axios的封装问题(简易版拦截,get,post)
2018/06/15 Javascript
element-ui封装一个Table模板组件的示例
2021/01/04 Javascript
python多进程共享变量
2016/04/06 Python
python机器学习之神经网络实现
2018/10/13 Python
PyTorch之图像和Tensor填充的实例
2019/08/18 Python
在Django中实现添加user到group并查看
2019/11/18 Python
Python将列表中的元素转化为数字并排序的示例
2019/12/25 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
python+openCV对视频进行截取的实现
2020/11/27 Python
pycharm 实现调试窗口恢复
2021/02/05 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
联想中国官方商城:Lenovo China
2017/10/18 全球购物
音乐器材管理制度
2014/01/31 职场文书
三方股东合作协议书范本
2014/09/28 职场文书
领导班子个人对照检查剖析材料
2014/09/29 职场文书
2014个人年终工作总结范文
2014/12/15 职场文书
农村党支部承诺书
2015/04/30 职场文书
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL
Flutter Navigator 实现路由传递参数
2022/04/22 Java/Android
python实现简单的三子棋游戏
2022/04/28 Python