【Code Review】传参的时候有这么多细节要考虑?冗余循环变量你也写过么?

发布于 2023-07-29  107 次阅读


原视频:【Code Review】传参的时候有这么多细节要考虑?冗余循环变量你也写过么?

  • ArgumentParser 的使用:对于实际上是枚举类型的参数,最好设置 choices,以免非法值的错误太晚被 raise。此外,尽早 parse_args
  • **kwargs 的使用:不要滥用,很多时候需要显式给出参数,增加代码的可读性,也方便 debug。
  • import 规范:三个 section,先 python 自带库,然后第三方库,最后本地库。先 import ...from ... import ...。同一个库写一行。section 内部按字典序排序。尽量避免 from ... import *
  • 配置项:明文方式(.py.json.yaml)虽然易读、方便发布,但容易暴露隐私,只适合非敏感数据。对于敏感数据,更推荐使用环境变量。
  • log:活用 logging 模块,便于 debug。
  • 数据存储:避免使用字典存储数据,而是使用数据类,可以自定义类,也可以使用 pydantic 库等,容错性更高,也便于 debug。