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设置windows桌面壁纸的实现代码
Jan 28 Python
跟老齐学Python之关于类的初步认识
Oct 11 Python
Python urllib、urllib2、httplib抓取网页代码实例
May 09 Python
Python简单的制作图片验证码实例
May 31 Python
分析python动态规划的递归、非递归实现
Mar 04 Python
对Python 除法负数取商的取整方式详解
Dec 12 Python
python循环定时中断执行某一段程序的实例
Jun 29 Python
关于python导入模块import与常见的模块详解
Aug 28 Python
通过python调用adb命令对App进行性能测试方式
Apr 23 Python
Python Excel vlookup函数实现过程解析
Jun 22 Python
matplotlib对象拾取事件处理的实现
Jan 14 Python
用Python将GIF动图分解成多张静态图片
Jun 11 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 正则匹配函数体
2009/08/25 PHP
php笔记之:数据类型与常量的使用分析
2013/05/14 PHP
深入apache配置文件httpd.conf的部分参数说明
2013/06/28 PHP
小程序微信退款功能实现方法详解【基于thinkPHP】
2019/05/05 PHP
几个比较经典常用的jQuery小技巧
2010/03/01 Javascript
自定义jQuery选项卡插件实例
2013/03/27 Javascript
javascript获取隐藏元素(display:none)的高度和宽度的方法
2014/06/06 Javascript
js实现点击图片自动提交action的简单方法
2016/10/16 Javascript
自定义require函数让浏览器按需加载Js文件
2016/11/24 Javascript
Vue组件开发初探
2017/02/14 Javascript
详解vue中async-await的使用误区
2018/12/05 Javascript
vue elementUI table 自定义表头和行合并的实例代码
2019/05/22 Javascript
小程序click-scroll组件设计
2019/06/18 Javascript
Vue列表循环从指定下标开始的多种解决方案
2020/04/08 Javascript
微信小程序抽奖组件的使用步骤
2021/01/11 Javascript
代码块高亮可复制显示js插件highlight.js+clipboard.js整合
2021/02/15 Javascript
[03:02]2014DOTA2西雅图邀请赛 让队员自己告诉你DK NAVI备战情况
2014/07/08 DOTA
[36:41]完美世界DOTA2联赛循环赛FTD vs Magma第一场 10月30日
2020/10/31 DOTA
浅谈MySQL中的触发器
2015/05/05 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
使用Python OpenCV为CNN增加图像样本的实现
2019/06/10 Python
python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例
2020/02/28 Python
python判断正负数方式
2020/06/03 Python
浅析HTML5的WebSocket与服务器推送事件
2016/02/19 HTML / CSS
THE OUTNET美国官网:国际设计师品牌折扣网站
2017/03/07 全球购物
美国尼曼百货官网:Neiman Marcus
2019/09/05 全球购物
Linux内核产生并发的原因
2016/11/08 面试题
质量主管工作职责
2014/09/26 职场文书
法人代表证明书格式
2014/10/01 职场文书
个人简历求职信范文
2015/03/20 职场文书
瞿秋白纪念馆观后感
2015/06/10 职场文书
元宵节晚会主持词
2015/07/01 职场文书
解析laravel使用workerman用户交互、服务器交互
2021/04/28 PHP
node.js如何自定义实现一个EventEmitter
2021/07/16 Javascript
教你使用VS Code的MySQL扩展管理数据库的方法
2022/01/22 MySQL
vue如何实现关闭对话框后刷新列表
2022/04/08 Vue.js