python - 从 python 中除 main 函数之外的某个地方调用 sys.argv 是不好的约定吗

标签 python

我正在编写一个脚本,我有一个函数,称为 f(),它需要一个命令行参数(它需要打开的文件名)。但是,f() 并没有在主函数中直接调用。

我想知道直接从 f() 调用 sys.argv[1] 是否是错误的编码约定?如果我不这样做,我将不得不将它作为参数传递给所有最终调用 f() 的函数。

最佳答案

总是假设您的函数所需的参数在命令行上可用是一种不好的做法 - 如果以其他方式调用此代码怎么办?

函数应该为其需要访问的数据声明输入参数。

至少,将必要的参数传递给 f() 而不是访问 sys.argv 有助于使 f() 更有效可重复使用。

关于python - 从 python 中除 main 函数之外的某个地方调用 sys.argv 是不好的约定吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3356262/

相关文章:

python - 根据 Pandas 中特定键的出现将长序列转换为数据框

python - 更新 pandas 数据框并更新值(如果数据存在)

python - scipy.misc.imshow 运行时错误 ('Could not execute image view' )

python - 用前后的平均值填充包含 NaN 的单元格

python - Mac OS Leopard 上 QtWebKit 的 PyQt4 ImportError

python - 如何更新 FigureCanvasTkAgg 的内容

python - Django查询过滤器多对多对多等

python - openpyxl - x 和 y 轴刻度的增量

python - PyQT4:如何获取 qListView 的上下文菜单集

python - 设置用于在 Python 包中链接 C 代码的默认编译器