新手 python 问题
有一模块 test.py
def getCircleArea(r):
"""这是一个测试的例子"""
return 3.14*r*r
我在python 3.3.2 shell中,这样
>>>import test
>>>print(test.getCircleArea.__doc__)
结果总是显示None
求解,谢谢。
[解决办法]
你import test后
然后输入help(test)
看test到底导进去了没 built-in本身也有test的
如果发现没导进去 就把test放到库目录
或者切换工作目录到你test的目录然后重新导入
[解决办法]
如果是系统的test模块,应该没有getCircleArea函数,会报错。我猜你有两个test.py,一个有docstring,一个没有。看看你的当前目录下的test.py是什么样的,下面的命令可以输出你的当前工作目录。在你的python shell中运行:
import os
print(os.getcwd()) # 输出为当前工作目录
[解决办法]
用shell编辑一个hello.py文件,这是什么意思?shell是指idle的一个窗口?
修改后的文件要加载进该shell(通常是用import或者reload),才会起作用。你下面提到的开一个新shell当然也可以。
修改后(不经编译)可直接执行(解释型语言的特点),和修改后的程序自动执行不是一回事。javascript的新程序也要加载后才起作用。
[解决办法]
hello.getArea 的用法说明你 import 了
无论你怎么改显示总是 import 时的内容,除非重载一次
[解决办法]
import only import the code once
unless you explicitly reload it