例如:
 Files/ 
    main.py
    SubFileA/
        __init__.py              "from util1 import help"
        util1.py                 "def help(): print ...A..."
    SubFileB/
        __init__.py              "from util1 import help"
        util1.py                 "def help(): print ...B..."
并且 SubFileA 和 SubFileB 中的 util1.py 有不同的内容。
我希望有某种方式用户可以指定要导入的 util1.py。
我期待类似的东西:
  if subFileA:
       from SubFileA import *
  else:
       from SubFileB import *
util1.py 具有相同的 API,但实现不同。
我这样做的原因是,如果我将两个 util1.py 组合在一起,代码会变得丑陋且难以维护。希望任何人都可以给我一个解决方案,或者任何建议都会很棒!
我尝试了这些代码,但收到了警告(它确实有效,但警告令人尴尬):
main.py:4: SyntaxWarning: import * only allowed at module level
   def main():
main.py:4: SyntaxWarning: import * only allowed at module level
   def main():
每个人。我想我找到了解决方案。但我认为这不是好的编程风格。
Files/
   main.py                              "from directory import *"
   directory/
       __init__.py                      
                                        "user=raw_input() 
                                        if user: 
                                              from directoryA import *
                                        else
                                              from directoryB import * "
       directoryA/
           __init__.py                   "from util1 import help1()"
           util1.py 
       directoryB/
           __init__.py                   "from util1 import help1()"
           util1.py 
确实,这看起来很奇怪。但它完成了这项工作。