第二章 MeterSphere之Python脚本日期处理的坑



前言

在MeterSphere的前后置脚本中使用Python处理数据,结果发现控制台一直报错,说我函数中没有xxx属性等等,然后打印值的类型发现,使用的居然是Java中的包。以此来记录一下这个坑点。


提示:以下是本篇文章正文内容,下面案例可供参考

一、在MeterSphere前后置脚本中执行如下代码

import datetime
date = datetime.datetime.now().date()
log.info("1、"+str(type(date)))

def printTimeType():
	date = datetime.datetime.now().date()
	log.info("2、"+str(type(date))
printTimeType()

输出结果如下:

1<type 'java.sql.Date'>
2<class 'datetime.date'>

是不是很惊讶!!这是为什么!为什么啊!

如果不将datetime.datetime.now().date()放在方法体中,使用第一种声明的方式,则调用date.strftime("%Y-%m-%d")会报错:

AttributeError:'java.sql.Date' object has no attribute 'strftime' in <script> at line number 5

使用第二种方式就可以正确输出date。

总结

以后在metersphere中编写python的代码,尽量将变量定义在方法体中,这样才能正确使用Python的包。

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐