首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

关于python的两个入门有关问题

2012-02-15 
关于python的两个入门问题我使用的是python2.5+eclipse+pydev1。新建一个module时,为什么会产生一个__init_

关于python的两个入门问题
我使用的是python2.5   +   eclipse   +   pydev

1。新建一个module时,为什么会产生一个__init__.py?这个文件有什么用?

2。看下面一段代码,为什么出错?
直接在一个py文件中输入:

index   =   0

def   test():
        print   index
        if   index   > 0   :
                index   =   1
        else:
                index   =   -1

test()

错误为:
Traceback   (most   recent   call   last):
    File   "D:\java\WORK32\TestPython\src\sdfd\SDf.py ",   line   10,   in   <module>
        test()
    File   "D:\java\WORK32\TestPython\src\sdfd\SDf.py ",   line   4,   in   test
        print   index
UnboundLocalError:   local   variable   'index '   referenced   before   assignment

我明白它的意思,但是我不知道怎么实现我的要求:
在test()中的index使用之前声明的,而不是在if   else中重新声明

多谢大家!




[解决办法]
第一个问题的答案是:

在加载模块时,会首先执行这个方法

在类中定义__init()__的意思是在创建类实列时调用这个方法来初始化

热点排行