python - 在python中调用函数和传递数组
问题描述
我是新来的,也是 python 的新手。我通常习惯于 C、javascript 和 php 编码。
我正在尝试调用一个函数来执行 SQL 查询,然后将数据添加到一些数组中。
然后我想将多个数组传递给另一个函数来打印它们,例如,并且能够随意访问该数组的任何部分。
所以总结一下......我有两个功能,一个从 sql 查询中收集信息,并将列和行存储到几个数组中。下一个函数应该从前一个函数中获取那些传递的数组并打印它们(现在)。我只是想把数组放到下一个函数中,这样我以后就可以用它们做我需要的了。传递它们是我遇到麻烦的里程碑我只是不太确定如何调用函数并正确编码它们以便第一个函数将数组传递给下一个函数以进行打印或对数组执行任何需要的操作
不确定我是否在这里做正确的事情,只是想知道是否有人可以指出我正确的方向。
谢谢
import mysql.connector
def grabdata():
mydb = mysql.connector.connect(
host="xxxxxxxxxx",
user="xxxxxxx",
passwd="xxxxxxx",
database="vmware"
)
print(mydb)
mycursor = mydb.cursor()
mycursor.execute("select UserID, VMName, VMTemplate FROM VM WHERE CommissionStatus='commissioned';")
ReturnedUser_id = []
ReturnedVMName = []
ReturnedVMTemplate = []
for (User_id, VMName, VMTemplate) in mycursor:
ReturnedUser_id.append(User_id)
ReturnedVMName.append(VMName)
ReturnedVMTemplate.append(VMTemplate)
return(ReturnedUser_id,ReturnedVMName)
def printdata(ReturnedUser_id,ReturnedVMName):
testarray = ReturnedUser_id
testarray2 = ReturnedVMName
print(testarray[2])
print(testarray2[2])
return()
解决方案
您正在定义函数,但从未真正调用它们。尝试在文件末尾添加类似这样的内容:
if __name__ == '__main__':
user_id, vm_name = grabdata()
printdata(user_id, vm_name)
块的内容if __name__ == "__main__":
就是当这个文件作为主程序运行时将执行的内容。
例如,如果您要将此文件导入另一个文件,则if __name__ == "__main__"
不会执行该块
推荐阅读
- css - 在js轮播中围绕项目符号圈
- sql-server - 将 NVARCHAR 转换为英国日期
- javascript - 使用 Pentaho/JavaScript 制作带有条件的标志
- blockchain - 哪些节点包用于以太坊经典 (ETC) 的交易实现?
- ios - 如何禁止 AVPlayer 在 HLS 流中切换到仅音频轨道
- java - 如何使用 Java 中的几行代码将给定的前链接转换为后链接?
- haskell - 哈斯克尔帕斯卡三角形
- ios - 插入 UITableView
- react-native-android - 无法加载脚本。确保您正在运行 Metro 服务器。[反应原生]
- cytoscape.js - Cytoscape JS - 字体更改后重绘节点