为什么我传入的时间无法输出
来源:2-1 实战自定义包(1)
懒猫12138
2020-07-21 11:27:53
import random
from datetime import datetime
def gen_trans_id(date=None):
"""
根据我们传入的时间得到一个唯一的交易流水id
:param date:日期
:return:交易流水id
"""
#如果没有传入时间,则使用系统当前时间
if date is None:
date = datetime.now()
#怎么保证字符串的唯一
#日期+时间+毫秒+随机数(6位随机数)
return date.strftime("%Y%m%d%H%M%S%f") + str(random.randint(100000,999999))
from datetime import datetime
from trans.tools import gen_trans_id
def test_trans_tool():
"""测试trans包下的tool模块"""
id1 = gen_trans_id()
print(id1)
date = datetime(2015, 10, 2, 12, 30, 45)
id2 = gen_trans_id(date)
print(id2)
if __name__ == '__main__':
test_trans_tool()
2回答
同学,你好。在gen_trans_id()函数中,你只对date is None的情况进行了return,所以无论你给date传递什么值,if条件不成立都不会有返回值,可以调整一下return语句的缩进,让return语句在if判断后执行。
如果我的回答解决了您的疑惑,请采纳,祝学习愉快~~~~
相似问题
回答 2
回答 1