微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将主文件名从主文件移动到一个模块和另一个模块

如何解决如何将主文件名从主文件移动到一个模块和另一个模块

我想要一个包包含 3 个主要模块,'main.py'、'config_controls.py' 和 'inputs.py'。我希望主文件非常轻巧,并且主要是调用其他两个来完成所有工作。 config_controls 是设置我正在使用的硬件,输入是获取我可以通过外观对象和用户输入访问的详细信息。 我希望能够获取文件名称并将其传递给 config_controls ,然后它将导入输入(这需要主脚本文件作为其参数之一保存在字典中作为测试记录)。但它是一个无望的混乱。我不知道该怎么做。我想以这种方式(或关闭)将控件和输入分离到不同的模块中,以便我可以维护它们并对其进行扩展,但我不知道如何移动属性

ma​​in.py 的内容

#print('\n'*11)
import os
main_script_name = os.path.basename(__file__)
import config_controls as controls

# when importing inputs first
import inputs
print(user_inputs)

config_controls.py 的内容

import inputs as inputs

#instantiate the inputs class
insty2 = inputs
user_inputs = dir(insty2)
print(user_inputs)

user_inputs2 = insty2.Inputs()
print(dir(user_inputs2))

inputs.py 的内容

import re

class Inputs:
    def __init__(self,main_script_name):
        self.main_script_name = main_script_name

    def get_deets(self):
        my_dict = {}
        my_dict["main_filey"] = self.main_script_name
        return my_dict
      
if __name__ == "__main__":
    insty = Inputs('lalala')
    details = insty.get_deets()
    print(details)

预期结果 因为当我运行主文件时,它会导入 config_controls 并将主文件名称传递给它,然后将主文件名称传递给输入文件和主文件。 file 然后打印字典(其中存储了主文件名)。或者被展示如何正确地做到这一点。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?