python模块调用的问题
澳门新葡京官网
澳门新葡京官网
当前位置 : 澳门新葡京官网 > 澳门新葡京官网

python模块调用的问题

我在b.py想调用a.py中的getColumn,但是提示 Cursor closed;请问该怎么解决,如果我只写了a.getColumn,a.py中的其他语句会被执行吗

b.py

import a
a.getColumn
a.py
import pymysql
conn = pymysql.connecthost=127.0.0.1, port=3306, user=root, passwd=adminimda,db=db0
cur = conn.cursor
            
def getColumncolumn,table:
    r=cur.execute"SELECT %s FROM %s"%column,table
    print r

cur.close
conn.close

a.py:

import pymysql
conn = pymysql.connecthost=127.0.0.1, port=3306, user=root, passwd=adminimda,db=db0
cur = conn.cursor
            
def getColumncolumn,table:
    r=cur.execute"SELECT %s FROM %s"%column,table
    print r

if __name__ == __main__:
    cur.close
    conn.close

原因是导入a.py时, cur.close conn.close被执行过一次。

或者你把 cur.close conn.close 放到getColumn函数内。

python中 __name__及__main__的妙处 http://www.cnblogs.com/liqilei/archive/2010/08/11/1797715.html

在import a时,a中的代码除了getColumn函数已经执行过一编,所以cursor已经关闭,之后再调用getColumn函数,会抛出cur.close执行过的结果。

你可以选择在b中手动调用close

栏目列表

广告位

澳门新葡京官网