我在 Ubuntu 上使用 SublimeText2,并使用 python gData API。我的问题是某些变量和其他内容无法自动完成。for 循环上方的所有内容都会自动完成,但循环中包含的任何内容都不会自动完成。知道为什么吗?
我使用下载的 gdata tar 文件安装了 gData python API 并运行 python setup.py install。
import gdata.docs.service
# Create a client class which will make HTTP requests with Google Docs server.
client = gdata.docs.service.DocsService()
# Authenticate using your Google Docs email address and password.
client.ClientLogin('**@gmail.com', '**!')
# Query the server for an Atom feed containing a list of your documents.
documents_feed = client.GetDocumentListFeed()
# Loop through the feed and extract each document entry.
##Everything auto-completes except for stuff below this line
for document_entry in documents_feed.entry:
# Display the title of the document on the command line.
print document_entry.title.text
我已经安装了 SublimeText CodeIntel 和 Python 包,但是为什么顶部可以自动完成而底部却不能?
答案1
对于后人来说,你的错误是:
这是 SublimeCodeIntel 引发的错误(第 375 行的libs/codeintel2/tree_python.py
,具体来说)。我不太熟悉代码,但据我所知,搜索引擎似乎没有得到任何结果,也没有什么可以扩展的。可能是你的代码超出了 SublimeCodeIntel 的查找深度,因为client
是类的一个实例gdata.docs.service.DocsService()
,documents_feed
是client
的GetDocumentListFeed()
类,是中document_entry
每个的迭代器。你现在试图获取的属性,这本质上是entry
documents_feed
title.text
document_entry
gdata.docs.service.DocsService().GetDocumentListFeed().entry().title.text
(或多或少)。您有许多函数可能会生成大量数据,我猜 SublimeCodeIntel 无法跟踪所有数据。