Python 向Google应用程序引擎项目添加库
我一直在尝试将库添加到我的GAE应用程序中,但它不断抛出一个错误。这就是我所拥有的:Python 向Google应用程序引擎项目添加库,python,google-app-engine,Python,Google App Engine,我一直在尝试将库添加到我的GAE应用程序中,但它不断抛出一个错误。这就是我所拥有的: sys.path.append(os.path.join(os.path.dirname(__file__), "lib\markdown2") 如果我现在这样做 html = markdown2.markdown("*boo*") #throws an error: markdown2 not defined 我使用markdown2进行简单的导入: import lib.markdown 我使用mar
sys.path.append(os.path.join(os.path.dirname(__file__), "lib\markdown2")
如果我现在这样做
html = markdown2.markdown("*boo*") #throws an error: markdown2 not defined
我使用markdown2进行简单的导入:
import lib.markdown
我使用markdown2进行简单的导入:
import lib.markdown
我不认为这是标准库之一。 您需要在应用程序文件夹中包含一份副本,否则在部署时将无法使用 之后不需要修改路径,只需使用相对于应用程序根文件夹的正确路径导入即可 例如: 如果您的应用程序位于 /主页/我的应用程序 您可能需要将标记2复制到 /home/myapp/lib/markdown2
在这种情况下,您应该使用“import lib.markdown2”。我认为这不是标准库之一。 您需要在应用程序文件夹中包含一份副本,否则在部署时将无法使用 之后不需要修改路径,只需使用相对于应用程序根文件夹的正确路径导入即可 例如: 如果您的应用程序位于 /主页/我的应用程序 您可能需要将标记2复制到 /home/myapp/lib/markdown2
在这种情况下,您将使用“import lib.markdown2”。您需要将
lib
目录添加到您的路径,而不是markdown
目录-markdown是一个包,由它所在的目录定义
这应该起作用:
sys.path.append(os.path.join(os.path.dirname(__file__), 'lib'))
您需要将
lib
目录添加到路径中,而不是markdown
目录-markdown是一个包,由它所在的目录定义
这应该起作用:
sys.path.append(os.path.join(os.path.dirname(__file__), 'lib'))
那真的是反斜杠吗?还是打字错误?那真的是反斜杠吗?或者这是一个输入错误?如果库在任何地方使用相对导入,这都不起作用,而且通常是个坏主意。如果库在任何地方使用相对导入,这也不起作用,而且通常是个坏主意。嘿,尼克。谢谢你的回答。我已经改变了。我是否需要添加一个
import
语句来完成这项工作,或者这是唯一需要的行。我尝试了两种方法,但仍然得到相同的错误:markdown2
未定义。当我编写导入语句(以及sys.path.append
)时,我会得到一个导入错误。我做错了什么?我有这个查询-我需要按原样使用整个库文件夹,还是只需要使用markdown2.py
文件(在这种情况下,它工作正常)。我是python新手,不知道库中每个文件夹的用途。我应该包含所有内容还是只包含一个特定文件?非常感谢@普拉哈,我对降价特别不熟悉。通常,如果目录有一个\uuuu init\uuuu.py
文件,那么它就是一个包,您应该包含它。听起来markdown只是一个模块,在这种情况下,您可以直接将其包含在根目录中,而无需进行路径操作。是的,您总是需要import语句,sys.path
操作只是为了确保Python能够找到模块。谢谢你的回答。我已经改变了。我是否需要添加一个import
语句来完成这项工作,或者这是唯一需要的行。我尝试了两种方法,但仍然得到相同的错误:markdown2
未定义。当我编写导入语句(以及sys.path.append
)时,我会得到一个导入错误。我做错了什么?我有这个查询-我需要按原样使用整个库文件夹,还是只需要使用markdown2.py
文件(在这种情况下,它工作正常)。我是python新手,不知道库中每个文件夹的用途。我应该包含所有内容还是只包含一个特定文件?非常感谢@普拉哈,我对降价特别不熟悉。通常,如果目录有一个\uuuu init\uuuu.py
文件,那么它就是一个包,您应该包含它。听起来markdown只是一个模块,在这种情况下,您可以直接将其包含在根目录中,而无需进行路径操作。是的,您总是需要import语句,sys.path
操作只是为了确保Python能够找到模块。