刚开始使用“Dive Into Python”。出于某种原因,我无法显示文档字符串。
#!/usr/bin/env python
def buildConnectionString(params):
"""Build a connection string from a dictionary of parameters
"""
# Returns string
return ";".join(["%s=%s" % (k, v) for k, v in params.items()])
if __name__ == "__main__":
myParams = {"server": "mpilgrim", \
"database": "master", \
"uid": "sa", \
"pwd": "secret" \
}
print buildConnectionString(myParams)
在控制台:
>>> import odbchelper
>>> print odbchelper.buildConnectionString.__doc__
None
>>>
这很好用:
>>> import sys
>>> sys.path.__doc__
"list() -> new empty list\nlist(iterable) -> new list initialized from iterable's items"
>>>
我尝试了许多修改,包括"""
和#
条评论。没有快乐。问题在哪里?
答案 0 :(得分:2)
你应该做些什么;一些可能的原因:
更新
如果你使用reload
来避免退出并重新启动解释器(或IDLE或你正在使用的任何东西),你需要注意几个陷阱:
reload
不是递归的换句话说,如果您的odbchelper
导入odbcstuff
和reload(odbchelper)
,则odbcstuff
将不会重新加载。
reload
不会更新其他现有对象如果您尝试使用
来解决reload
的非递归特性
import odbcstuff
reload(odbcstuff)
odbcstuff
看到的odbchelper
仍然是旧的odbchelper.odbcstuff = odbcstuff # update odbchelper with the reloaded odbcstuff
;你还需要一步:
reload
正如您所看到的,对于多个依赖模块而言,这将是相当繁琐的。所以继续使用{{1}},但如果仍然无法正常工作,请退出并重新启动。