TypeError: 'module' object is not callable 原因分析

来源:互联网 发布:c语言编写99乘法表三角 编辑:程序博客网 时间:2024/05/10 15:31
程序代码 
class Person:
     #constructor
     def __init__(self,name,sex):
          self.Name = name
          self.Sex = sex
     def ToString(self):
          return 'Name:'+self.Name+',Sex:'+self.Sex
在IDLE中报错:
>>> import Person
>>> per = Person('dnawo','man')
Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    per = Person('dnawo','man')
TypeError: 'module' object is not callable
原因分析:
Python导入模块的方法有两种:import module 和 from module import,区别是前者所有导入的东西使用时需加上模块名的限定,而后者不要。
正确的代码:
>>> import Person
>>> person = Person.Person('dnawo','man')
>>> print person.Name

>>> from Person import *
>>> person = Person('dnawo','man')
>>> print person.Name
原创粉丝点击