使用开发服务器,它可以使用debug = True或False.
在生产中,如果debug = True,一切都有效,但如果debug = False,我得到500错误,apache日志以导入错误结束:"ImportError:无法导入名称Project".
导入中的任何内容都不会以调试为条件 - 唯一的代码是开发服务器是否应该提供静态文件(在生产中,apache应该处理这个 - 并且这是单独测试并且工作正常).
这是我第一次使用django rest和Django Oauth工具包我正在遵循本教程 oauth2-with-django-rest-framework 但是当我运行python manage.py migrate时,我收到以下错误:
ImportError:无法为API设置'DEFAULT_AUTHENTICATION_CLASSES'导入'oauth2_provider.ext.rest_framework.OAuth2Authentication'.ImportError:没有名为ext.rest_framework的模块.
出了什么问题?我应该安装另一个模块吗?我的虚拟环境包含:
CERTIFI == 2017年4月17日
chardet的== 3.0.4
Django的== 1.11.2
Django的扩展== 1.8.1
Django的OAuth的工具== 1.0.0
djangorestframework == 3.6.3
IDNA == 2.5
oauthlib == 2.0.2
pytz == 2017.2
请求== 2.18.1
6 == 1.10.0
Unidecode == 0.4.21
urllib3 == 1.21.1
django importerror oauth-2.0 django-rest-framework django-oauth
当我在 Macbook Air M1 上运行 .py 文件时遇到问题:
[Running] python3 -u "/Users/kaiyuwei/Documents/graduation project/metaheuristics/run_CRO.py"
Traceback (most recent call last):
File "/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/__init__.py", line 23, in <module>
from . import multiarray
File "/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/multiarray.py", line 10, in <module>
from . import overrides
File "/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/overrides.py", line 6, in <module>
from numpy.core._multiarray_umath import (
ImportError: dlopen(/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/_multiarray_umath.cpython-38-darwin.so, 0x0002): tried: '/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/_multiarray_umath.cpython-38-darwin.so' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/kaiyuwei/Documents/graduation project/metaheuristics/run_CRO.py", …
Run Code Online (Sandbox Code Playgroud) 我有一个用Python编写的Raspberry Pi项目,它使用RPi.GPIO模块.关于代码的所有工作都是在Windows机器上完成的,RPi.GPIO不会安装,每次我尝试运行autodoc时都会崩溃,说它无法导入RPi.GPIO.
D:\cube\docs\ledcube.rst:4: WARNING: autodoc: failed to import module u'ledcube'
; the following exception was raised:
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\sphinx-1.2b1-py2.7.egg\sphinx\ext\autodoc.
py", line 326, in import_object
__import__(self.modname)
File "D:\cube\ledcube.py", line 2, in <module>
import RPi.GPIO as GPIO
ImportError: No module named RPi.GPIO
Run Code Online (Sandbox Code Playgroud)
有什么方法吗?
当我尝试从中导入Webkit
时gi.repository
,它给出了ImportError
:
from gi.repository import Webkit
ERROR:root:Could not find any typelib for Webkit
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name Webkit
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我知道堆栈溢出有很多类似的问题.但是,共同的答案对我来说似乎并不适用.
我有这样的文件结构
proj/
lib/
__init__.py
aa.py
bb.py
test/
__init__.py
aa_test.py
Run Code Online (Sandbox Code Playgroud)
我想如果我在test.py中包含代码
import lib.aa
Run Code Online (Sandbox Code Playgroud)
要么
from lib import aa
Run Code Online (Sandbox Code Playgroud)
我将能够引用lib/
目录中的模块.但那没用.
所以我尝试添加到路径,并正确添加它:
os.environ["PATH"] += ":%s" % os.path.abspath(os.path.join("..",""))
print os.environ["PATH"]
Run Code Online (Sandbox Code Playgroud)
但即使是现在,当我尝试上面的导入语句时......我不断收到错误
ImportError: No module named aa
Run Code Online (Sandbox Code Playgroud)
要么
ImportError: Importing from non-package <Something...>
Run Code Online (Sandbox Code Playgroud)
有什么明显的东西我不见了吗?
有没有办法检查我__init__.py
是否正确配置了我的文件,或者查看我的包层次结构?
当我使用nosetests来运行一个我无法在鼻子外面重现的测试套件时,我遇到了一个神秘的导入错误.此外,当我跳过测试的子集时,导入错误消失.
执行摘要: 我在Nose中收到导入错误a)仅在排除带有某个属性的测试时出现,并且b)无法在交互式python会话中重现,即使我确保sys.path对两者都相同.
细节:
包结构如下所示:
project/
module1/__init__.py
module1/foo.py
module1/test/__init__.py
module1/test/foo_test.py
module1/test/test_data/foo_test_data.txt
module2/__init__.py
module2/bar.py
module2/test/__init__.py
module2/test/bar_test.py
module2/test/test_data/bar_test_data.txt
Run Code Online (Sandbox Code Playgroud)
一些foo_test.py测试的速度很慢,所以我创建了一个@slow装饰,让我有nosetests选择跳过它们:
def slow(func):
"""Decorator sets slow attribute on a test method, so
nosetests can skip it in quick test mode."""
func.slow = True
return func
class TestFoo(unittest.TestCase):
@slow
def test_slow_test(self):
load_test_data_from("test_data/")
slow_test_operations_here
def test_fast_test(self):
load_test_data_from("test_data/")
Run Code Online (Sandbox Code Playgroud)
当我想只运行快速单元测试时,我会使用
nosetests -vv -a'!slow'
Run Code Online (Sandbox Code Playgroud)
从项目的根目录.当我想要运行它们时,我删除了最后的参数.
我怀疑是这个烂摊子应该归咎于细节.单元测试需要从文件加载测试数据(不是最佳实践,我知道.)文件放在每个测试包中名为"test_data"的目录中,单元测试代码通过相对路径引用它们,假设正在从test /目录运行unit test,如上面的示例代码所示.
为了从项目的根目录中运行nose,我在每个测试包中将以下代码添加到init .py:
import os
import sys
orig_wd = os.getcwd()
def setUp():
"""
test package setup: change working directory to the …
Run Code Online (Sandbox Code Playgroud) 我正在研究一个烧瓶教程,我正在尝试运行一个创建数据库的脚本,而不是通过命令行来完成它.它使用SQLAlchemy-migrate包,但是当我尝试运行脚本时,它会产生ImportError.
这是终端输出:
Sean:app seanpatterson$ python ./db_create.py
Traceback (most recent call last):
File "./db_create.py", line 2, in <module>
from migrate.versioning import api
ImportError: No module named migrate.versioning
Run Code Online (Sandbox Code Playgroud)
这是db_create.py脚本:
#!flask/bin/python
from migrate.versioning import api
from config import SQLALCHEMY_DATABASE_URI
from config import SQLALCHEMY_MIGRATE_REPO
from app import db
import os.path
db.create_all()
if not os.path.exists(SQLALCHEMY_MIGRATE_REPO):
api.create(SQLALCHEMY_MIGRATE_REPO, 'database repository')
api.version_control(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO)
else:
api.version_control(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO, api.version(SQLALCHEMY_MIGRATE_REPO))
Run Code Online (Sandbox Code Playgroud)
这是它引用的配置文件:
#!/usr/bin/env python
import os
basedir = os.path.abspath(os.path.dirname(__file__))
SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir, 'app.db')
SQLALCHEMY_MIGRATE_REPO = os.path.join(basedir, 'db_repository')
Run Code Online (Sandbox Code Playgroud)
此应用程序正在使用虚拟环境运行.这是我在环境中安装的与之相关的模块:
sqlalchemy_migrate-0.7.2-py2.7.egg-信息
任何帮助赞赏
我正在尝试在virtualenv上运行Quandl模块,我已经卸载了包只有pandas然后是Quandl,
我正在运行Python 2.7.10 - 我已经卸载了所有其他python版本,但它仍然给我"ImportError:没有名为Quandl的模块"的问题.你知道什么可能是错的吗?谢谢
我用这样的pip 安装了Dask:
pip install dask
Run Code Online (Sandbox Code Playgroud)
当我尝试做时,import dask.dataframe as dd
我收到以下错误消息:
>>> import dask.dataframe as dd
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/path/to/venv/lib/python2.7/site-packages/dask/__init__.py", line 5, in <module>
from .async import get_sync as get
File "/path/to/venv/lib/python2.7/site-packages/dask/async.py", line 120, in <module>
from toolz import identity
ImportError: No module named toolz
No module named toolz
Run Code Online (Sandbox Code Playgroud)
我注意到文档说明了
pip install dask
:仅安装dask,它仅依赖于标准库.如果您只需要任务计划程序,这是合适的.
所以我很困惑为什么这不起作用.
importerror ×10
python ×7
django ×2
apache ×1
autodoc ×1
dask ×1
debugging ×1
django-oauth ×1
flask ×1
gpio ×1
gtk3 ×1
import ×1
installation ×1
macos ×1
nose ×1
oauth-2.0 ×1
package ×1
pip ×1
pygobject ×1
python-2.7 ×1
quandl ×1
unit-testing ×1
webkit ×1
x86 ×1