【发布时间】:2019-09-25 10:38:49
【问题描述】:
我正在尝试将数据添加到循环内的数组中,因为每一行都是列并且返回行。
我的目标是将列排序为几个数组,但这似乎不起作用。我整个下午都在谷歌上搜索如何在 python 中执行此操作。 W3 学校正在展示类似的东西,但它不会起作用,他们的简单数组示例也不会起作用,例如array[0] = "text" ,并不断返回 NameError: 'ReturnedUser_id' is not defined 的错误。
然后我希望在我将这段代码转换为函数后将这些数组传递出去。
谁能帮帮我?
谢谢
import mysql.connector
mydb = mysql.connector.connect(
import mysql.connector
mydb = mysql.connector.connect(
host="xxx.xxx.xxx.xxx",
user="xxxxxxx",
passwd="xxxxxx",
database="vmware"
)
print(mydb)
mycursor = mydb.cursor()
mycursor.execute("select UserID, VMName, VMTemplate FROM VM WHERE CommissionStatus='commissioned';")
c = 0
for (User_id, VMName, VMTemplate) in mycursor:
c += 1
ReturnedUser_id[c] = User_id
ReturnedVMName[c] = VMName
ReturnedVMTemplate[c] = VMTemplate
【问题讨论】:
-
您忘记定义 ReturnedUser_id、ReturnedVMName 和 ReturnedVMTemplate - 可能是:
ReturnedVMTemplate = [],然后像ReturnedVMTemplate.append()一样使用它 -
顺便说一句 - 我强烈建议不要创建 3 个列表,而是创建一个
class VM,添加一个from_row()静态方法来从 SQL 行初始化类,然后存储所有VM 实例列表中的数据:)