相关疑难解决方法(0)

python:在不同的包下具有相同名称的两个模块和类

我已经开始学习python并编写练习应用程序.目录结构如下

src
 |
 --ShutterDeck
    |
    --Helper
       |
       --User.py -> class User
    --Controller
       |
       --User.py -> class User
Run Code Online (Sandbox Code Playgroud)

src目录是PYTHONPATH.在一个不同的文件中,让我们说main.py,我想访问这两个User类.我该怎么做.

我尝试使用以下但它失败了:

import cherrypy
from ShutterDeck.Controller import User
from ShutterDeck.Helper import User

class Root:
  @cherrypy.expose
  def index(self):
    return 'Hello World'

u1=User.User()
u2=User.User()
Run Code Online (Sandbox Code Playgroud)

这当然是模棱两可的.我能想到的另一种(c ++方式)方式是

import cherrypy
from ShutterDeck import Controller
from ShutterDeck import Helper

class Root:

  @cherrypy.expose
  def index(self):
    return 'Hello World'

u1=Controller.User.User()
u2=Helper.User.User()
Run Code Online (Sandbox Code Playgroud)

但是当运行上面的脚本时,它会出现以下错误

u1=Controller.User.User()
AttributeError: 'module' object has no attribute 'User'
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么会出错?该目录ShutterDeck …

python package python-import python-3.x

22
推荐指数
2
解决办法
3万
查看次数

标签 统计

package ×1

python ×1

python-3.x ×1

python-import ×1