python sys,os,time模块的使用(包括时间格式的各种转换)
作者:君惜 发布时间:2021-02-08 02:31:33
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
来源:https://segmentfault.com/a/1190000014620593


猜你喜欢
- 本项目是利用五年左右的世界地震数据,通过python的pandas库、matplotlib库、basemap库等进行数据可视化,绘制出地震散
- 本文实例讲述了Python使用scipy模块实现一维卷积运算。分享给大家供大家参考,具体如下:一 介绍signal模块包含大量滤波函数、 *
- Document自带的方法: 循环执行:var timeid = window.setInterval(“方法名或方法”,“延时”);win
- 1、IIS为一个死循的执行过程设定执行时间(缺省为90秒)超时事件:<%response.buffer=true%><BO
- 题目输入一个正整数数组,把数组里面的所有属猪拼接起来成为一个数打印能拼接起来的所有数字中最大/最小的那个。思考直观想法就是求出这个数组中所有
- AES加密方式有五种:ECB, CBC, CTR, CFB, OFB从安全性角度推荐CBC加密方法,本文介绍了CBC,ECB两种加密方法的p
- 最近用vuepress建了个博客,音乐的背景图片需要网络地址。还有博客自动复用的摘要图片也需地址开始用的阿里云的免费对象存储oss,但又是登
- 总括pandas的索引函数主要有三种:loc 标签索引,行和列的名称iloc 整型索引(绝对位置索引),绝对意义上的几行几列,起始索引为0i
- 设计,用户说好,才是真的好!14期的友商联线,同事认为风格不美观,需要重新设计。这次,我们引入了用户调研,调研数据可以帮助我们快速决策!ED
- 两大类索引使用的存储引擎:MySQL5.7 InnoDB聚簇索引* 如果表设置了主键,则主键就是聚簇索引* 如果表没有主键,则会默认第一个N
- 今天对add_months函数进行简单总结一下:add_months 函数主要是对日期函数进行操作,在数据查询的过程中进行日期的按月增加,其
- 本文实例讲述了python解析多层json操作。分享给大家供大家参考,具体如下:原始文件内容:{ "MaskPolyg
- 一、使用 Microsoft OLE DB Provider For ODBC 链接MySQL安装MySQL的ODBC驱动MyODBC1、为
- 解读pandas.DataFrame.corrwithpandas.DataFrame.corrwith用于计算DataFrame中行与行或
- 如下所示:def test1(): try: print('to do stuff')  
- range()是Python的内置函数,用于创建整数的列表,可以生成递增或者递减的数列。xrange也有相同的功能, 今天来看下它们之间的
- "神经衰弱"翻牌游戏考察玩家的记忆力,游戏的开头会短时间给你看一小部分牌的图案,当玩家翻开两张相同图案牌的时候,会消除,
- python聊天室很多人都觉得微信,QQ,ICQ(我不知道现在还能不能用了)都过于垃圾,想要自己做一个聊天室(或是聊天软件),所以我们可以自
- 现在有这样一个需求,内网有一个数据库服务,需要将外网的数据库导入到内网数据库。将外网的数据库导出sql文件有700MB+,用MySQL自带的
- plt.subplot()plt.subplot(nrows, ncols, index, **kwargs)第一个参数:*args (官网