【Python】两个大模型生成代码需要注意的点
实际项目开发时遇到的两个点,我觉得需要写出来,因为大模型总是写Python写得不合理。
logger.error
这样的代码在模型生成的时候随处可见:
try:......exceptExceptionase:logger.error(f"err:{e}")问题是,error log会屏蔽traceback,而如果try中有太多的代码,仅凭一行error log是无法定位问题出在哪里的。
所以更合理的写法应该是传入exc_info=True:
logger.error(f"err:{e}",exc_info=True)或者,使用logger.exception,如果你的logger继承自标准库的logging模块,那这个方法就是支持的:
logger.exception(f"err:{e}")import的位置
PEP 8 明确要求:import 应集中在文件顶部,按标准库 → 第三方 → 本地库分组。
但实际项目开发的时候,出于如下原因:
- 该导入是可选的,需要在未安装该库的平台确保正常运行。
- 该导入会带来性能上的问题,因此需要确保仅在需要使用时导入。
很多人会将导入写进代码里的if判断条件。
我不认为这是一种合理的做法,这两点应该用其他有效的方法进行规避,而不是付出降低项目可维护性的代价。
