1

我面临一个问题,其中google.appenginepythongoogle.cloud模块位于不同的目录下,名为google

它们的以下路径如下:

1st Path:C:\Users\MohammedT\Desktop\dsapp\sitepackages\dev\google_appengine

api_server.py
appcfg.py
backends_conversion.py
BUGS
bulkloader.py
bulkload_client.py
demos
dev_appserver.py
download_appstats.py
endpointscfg.py
gen_protorpc.py
google    --> Directory 1 where appengine module resides
lib
LICENSE
new_project_template
php
php_cli.py
README
RELEASE_NOTES
remote_api_shell.py
run_tests.py

2nd Path:C:\Users\MohammedT\Desktop\datastore\dsenv\Lib\site-packages

enum
enum34-1.1.6.dist-info
future
future-0.16.0.dist-info
futures-3.2.0.dist-info
gapic_google_cloud_datastore_v1-0.15.3-py2.7-nspkg.pth
gapic_google_cloud_datastore_v1-0.15.3.dist-info
gapic_google_cloud_error_reporting_v1beta1-0.15.3-py2.7-nspkg.pth
gapic_google_cloud_error_reporting_v1beta1-0.15.3.dist-info
gapic_google_cloud_logging_v2-0.91.3-py2.7-nspkg.pth
gapic_google_cloud_logging_v2-0.91.3.dist-info
google    ------------> Directory 2 where other other modules resides
googleapiclient
googleapis_common_protos-1.5.3-py2.7-nspkg.pth
googleapis_common_protos-1.5.3.dist-info
google_api_core-0.1.3-py3.6-nspkg.pth
google_api_core-0.1.3.dist-info
google_api_python_client-1.6.4.dist-info

我可以在不将它们移动到公共目录的情况下实现这一点吗?

我已将 python 路径设置为指向这两个目录。我目前可以从目录 2 导入,但无法从目录 1 导入

4

1 回答 1

0

您可以从其路径加载每个模块。在 Python 2 中使用:

import imp

foo = imp.load_source('module.name', '/path/to/file.py')
foo.MyClass()

这个可爱的答案中的其他细节: 如何在给定完整路径的情况下导入模块?

于 2018-01-10T12:58:44.450 回答