文章详情页
[python2]local variable referenced before assignment问题
浏览:213日期:2022-08-09 18:14:36
问题描述
class Test(obj):
def __init__(self): pass def _is_flag(self): try:v_sql='''Select count(*) From tablename'''push_ctrl_conn=oracle(’ETL_TEST’)self.reach_flag=push_ctrl_conn.runsql(v_sql,1)[0][0] except Exception,e:self._set_scan_state(’22’, str(e)) finally:push_ctrl_conn.close()def run(self): self._is_flag()
if name == ’__main__’:
test_case=Test()test_case.run()
类似这种格式,然后就报了UnboundLocalError: local variable ’push_ctrl_conn’ referenced before assignment
问题解答
回答1:try语法块不一定执行,即push_ctrl_conn不一定被赋值。很常见的错误,一般可以在try语法前先赋值。
像这种连接的需求,一般用上下文管理器功能,我猜测oracle库的实例也是支持的。
相关文章:
1. html - 这种错位的时间轴怎么布局,然后用css实现?2. CSS3 flex 如何让高度不等的同排等高?3. 网页爬虫 - python requests爬虫,如何post payload4. python - 如何用pandas处理分钟数据变成小时线?5. ionic 项目 ionic build android -release 打包时报错6. 请教,关于python字典,合并相同值的键的实现方法7. android - viewpager问题PagerTabStrip样式8. angular.js - 如何控制ngrepeat输出的个数9. javascript - 关于ajax请求问题!10. mysql_replication - mysql读写分离时如果单台写库也无法满足性能怎么解决
排行榜

网公网安备