如何将许多变量传递给不同文件中的函数?
我注意到有些文件只有功能(它们被分组在单独的文件中)。例如,一个文件控制安装(具有新安装、更新安装等功能),另一个授予访问权限(创建新用户、删除用户、更新用户)。这些函数接收相当数量的变量, 举个例子:
access_tool.add_user(cur,con,env,family,iserver,version,login,
password,prefix,proxyUser,proxyPass,
proxyServer,user,pass)
因此,access_tool(文件)和函数(get_add_info)从另一个文件接收这些变量,并且这些变量是动态的(来自数据库查询的结果)。如何优雅地将这些值传递给不同文件中的函数?
例子:
我们有 2 个重要文件:
- a.properties - 包含数据库信息和凭据
- mainfile.py - 主文件,调用以执行功能,例如:
- 添加用户 ENV newuser newuserpass
add-user 从文件 access_tool.py 中调用一个名为 add_user 的函数。
mainfile.py 所做的是(对于这个用户创建示例)取决于通过输入发送的环境,它将查询数据库以选择 X 服务器来添加用户,并将结果存储到 vars (用于数组循环):
cur,con,env,family,iserver,version,login,password,prefix,proxyUser,proxyPass,proxyServer
因此,这些 vars 将从循环接收 5 、 10 或更多服务器来添加。唯一的静态变量是 newuser 和 newuserpass(从输入接收)
我唯一的问题是决定如何将变量传递(或共享)到另一个文件上的函数。
一些工作人员建议我将所有这些都保存在同一个文件中,而不是每个类都有很多文件,而只需一个包含所有类的文件。