python中的时间转化如何解决

python中用哪个函数实现20-8-2017转化成2017-08-20?
各位大佬指点指点。。。

阅读 2.6k
5 个回答

时间处理的相关功能,在 datetime 模块中,它提供了现成的,格式化的,输入与输出封装。

# -*- coding: utf-8 -*-

import datetime
for s in [ '20-8-2017', '1-12-2017', '21-10-2017' ]:
    print datetime.datetime.strptime(s, '%d-%m-%Y').strftime('%Y-%m-%d')
import time
a=time.strptime('20-8-2017','%d-%m-%Y')
b=time.strftime('%Y-%m-%d',a)
print(b)
def convert(src):
  times = src.split("-")
  return "%s-%s-%s" % (times[2], times[1], times[0])
  
print convert("20-8-2017")

输出:2017-8-20,如果想要输出 2017-08-20,看下面

def convert(src):
  times = src.split("-")
  return "%04d-%02d-%02d" % (int(times[2]), int(times[1]), int(times[0]))
  
print convert("20-8-2017")

题主不想用split,就用api,任性啊。。

import time
def convert(src):
  time_obj=time.strptime(src,"%d-%m-%Y")
  return time.strftime("%Y-%m-%d",time_obj)
  
print convert("20-8-2017")
新手上路,请多包涵

import arrow
arrow.get('20-8-2017','DD-M-YYYY').format('YYYY-MM-DD')

import time
_str = '20-08-2017'
_str = time.strftime("%Y-%M-%d", time.strptime(_str, '%d-%M-%Y'))
print(_str)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏