Archived
0
0

fix: 改进

This commit is contained in:
2025-12-15 18:21:51 +08:00
parent b6c719fb21
commit 01c719b4fd
6 changed files with 33 additions and 24 deletions

View File

@@ -80,9 +80,13 @@ class Atom:
metadata = nucleon.metadata
except:
ret = "尚未链接对象"
try:
ret = str(eval(s))
logger.debug("eval 执行成功: '%s' -> '%s'", s, ret[:50] + '...' if len(ret) > 50 else ret)
try:
eval_value = eval(s)
if isinstance(eval_value, (list, dict)):
ret = eval_value
else:
ret = str(eval_value)
logger.debug("eval 执行成功: '%s' -> '%s'", s, str(ret)[:50] + '...' if len(ret) > 50 else ret)
except Exception as e:
ret = f"此 eval 实例发生错误: {e}"
logger.warning("eval 执行错误: '%s' -> %s", s, e)

View File

@@ -54,8 +54,12 @@ class Nucleon:
def eval_with_env(s: str):
try:
nucleon = self
ret = str(eval(s))
logger.debug("eval 执行成功: '%s' -> '%s'", s, ret[:50] + '...' if len(ret) > 50 else ret)
eval_value = eval(s)
if isinstance(eval_value, (int, float)):
ret = str(eval_value)
else:
ret = eval_value
logger.debug("eval 执行成功: '%s' -> '%s'", s, str(ret)[:50] + '...' if len(ret) > 50 else ret)
except Exception as e:
ret = f"此 eval 实例发生错误: {e}"
logger.warning("eval 执行错误: '%s' -> %s", s, e)