我是python的新手.现在,我需要声明大小为20的数组并将该数组传递给函数.
期望数组的函数为:
function(*args)
args是function()的输入.
谁能帮我,如何在python中传递数组?
解决方法:
当您说“数组”时,我假设您的意思是Python列表,因为在其他语言中使用数组时,该列表通常在Python中使用. Python实际上有几种数组类型:list、tuple和array;流行的第三方模块Numpy也提供数组类型.
要将单个列表(或其他类似数组的容器)传递给使用单个* args参数定义的函数,您需要使用*运算符在函数调用中解压缩列表.
这是在Python 2或Python 3上运行的示例.我列出了长度为5的列表,以使输出简短.
def function(*args):
print(args)
for u in args:
print(u)
#Create a list of 5 elements
a = list(range(5))
print(a)
function(*a)
输出
[0, 1, 2, 3, 4]
(0, 1, 2, 3, 4)
0
1
2
3
4
请注意,当函数打印args时,输出显示在括号()中,而不显示在方括号[]中.这是因为方括号表示列表,括号表示元组.函数调用中的* a将列表解压缩为单独的参数,但函数定义中的* arg将其重新打包为元组.
标签:python
来源: https://codeday.me/bug/20191118/2030927.html