Python设置.py脚本未正确安装模块

2024-10-02 02:27:39 发布

您现在位置:Python中文网/ 问答频道 /正文

回购位置:https://github.com/willkara/SakaiPy

所以我有了我正在创建的python模型。它目前的结构是:

SakaiPy
├── SakaiPy
│   ├── __init__.py #1
│   └── RequestGenerator.py
├── SakaiTools
    ├── __init__.py #2
    ├── Assignment.py
    ├── Announcement.py
    └── ...etc.py
└── setup.py

init.py\1看起来像:

^{pr2}$

init.py\2为空

我的设置.py看起来像:

  version='1.0',
  description='Python interface to the Sakai RESTful API\'s',
  license='MIT',
  author='William Karavites',
  author_email='wkaravites@gmail.com',
  url='https://github.com/willkara/SakaiPy',
  packages=['SakaiPy','SakaiPy/SakaiTools'],
  requires={
            "mechanize",
            "cookielib",
            "requests",
            "simplejson"}
 )

我的问题是模块的构建似乎不正确。在

当我尝试像这样使用模块时:

#!/usr/bin/python
# -*- coding: utf-8 -*-

from SakaiPy import *

print "hello"

authInfo={}
authInfo['baseURL'] =""
authInfo['loginURL']=""
authInfo['username']=""
authInfo['password']=""

rq = RequestGenerator.RequestGenerator(authInfo)

我得到这个错误:

Traceback (most recent call last):
  File "../sakaiTest.py", line 14, in <module>
    rq = RequestGenerator.RequestGenerator(authInfo)
NameError: name 'RequestGenerator' is not defined

我猜是我的设置.py和init.py脚本设置不正确。在


Tags: 模块pyhttps模型githubcominit结构
1条回答
网友
1楼 · 发布于 2024-10-02 02:27:39

您需要更改目录结构,因为现在技术上有两个Python模块,并且您给setuptools一个不正确的包路径。为了获得您要查找的路径,您需要将SakaiTools目录嵌套在SakaiPy目录中。有了这个,您应该能够拥有您正在寻找的导入,并且您可以像您看起来试图做的那样,将SakaiTools作为SakiPy.SakaiTools导入。在

SakaiPy
├── SakaiPy
│   ├── __init__.py # make this blank
│   ├── RequestGenerator.py
│   └── SakaiTools
│       ├── __init__.py # keep it blank
│       ├── Assignment.py
│       ├── Announcement.py
│       └── ...etc.py
└── setup.py

这将为您提供一个以SakaiTools作为子模块的单个模块,这听起来像您正在寻找的。您将需要从第一个__init__.py删除您的SakaiTools导入,因为您可以通过这个设置很好地访问这些导入。在


如果您希望保留两个不同的模块,则需要告诉setuptools您有两个不同的模块。在

^{pr2}$

相关问题 更多 >

    热门问题