| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1345 人关注过本帖
标题:Python模块重载的一个问题(删除代码仍有效)
只看楼主 加入收藏
tuyajie21cn
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2009-6-23
收藏
 问题点数:0 回复次数:1 
Python模块重载的一个问题(删除代码仍有效)
情况描述:(python2.7)
A.py中import Just.py,在A.py运行期间
1、修改Just.py中的方法cli_xx(),然后A.py中调用reload()重新载入,修改的方法立即生效
2、Just.py中新增一个方法,然后A.py中调用reload()重新载入,新增的方法立即生效
问题出现了!!
3、Just.py中删除方法cli_xx(),然后A.py中调用reload()重新载入,被删除的方法仍然可用

为什么?怎么办?大家一起讨论下呢?

A.py 代码:
程序代码:
#/usr/bin/python2.7
#A.py

import Just

Just.cli_xx()

a = input('Put in:')
print 'a:',a

reload(Just)
Just.cli_xx()

Just.py 代码:
程序代码:
#/usr/bin/python2.7
#Just.py

def cli_xx():
    print "I'm xx"

先运行A.py  待提示输入时先修改Just.py,然后随意输入,查看结果
搜索更多相关主题的帖子: 怎么办 import color 
2013-01-17 10:16
静夜思
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:济南的冬天
等 级:管理员
威 望:11
帖 子:8913
专家分:2567
注 册:2004-3-25
收藏
得分:0 
reload并不可靠,web框架开发环境都是用的reload,但有时候修改了代码需要重启server才能生效

畅所欲言
2013-01-17 14:02
快速回复:Python模块重载的一个问题(删除代码仍有效)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019967 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved