我将用Python开始我的旅程。我想创建一个程序,将我的xlsx文件转换成sql文件,然后将数据加载到数据库中。你知道吗
我想创建一个有两个参数的类:
这是初始版本(目前我只是打印行):
class XToSql():
def __init__(self, ex = xlrd.open_workbook('ex1.xlsx'), sh = ex.sheet_by_index(0)):
self.ex = ex
self.sh = sh
def modify(self):
for i in str((self.sh.nrows-1)):
a = 1
print(self.sh.row_values(a))
a += 1
a1 = XToSql()
a1.modify()
在__init__
函数中,此行用红色标记:sh = ex.sheet_by_index(0) ->
,运行后出现此错误:
def __init__(self, ex = xlrd.open_workbook('ex1.xlsx'), sh = ex.sheet_by_index(0)):
NameError: name 'ex' is not defined
你知道我做错了什么吗?你知道吗
在
__init__
的参数列表中,ex
尚未计算,因此sh = ex.sheet_by_index(0))
抛出NameError。这在创建类对象时发生。你知道吗你可以做几件事。编写类的一个原因是可以重用它,因此类可能只应将filepath作为参数。你知道吗
也许您应该能够指定要处理的工作表
像这样使用
ex
只有在__init__
方法的主体内部才可用。不能在方法体之外访问方法的参数。你知道吗您需要执行以下操作:
然后这样称呼:
相关问题 更多 >
编程相关推荐