python中怎么把数组作为函数的输入
我在学习abaqus基于python的二次开发,遇到了这样一个问题 Abaqus中有一个函数findAt(),函数的输入为findAt(A,B,C,D,.....),其中A B C D等均为点的坐标 当我把这些坐标放在一个list里时,a=[A,B,C,D] findAt(a)调用函数出现问题,TypeError: arg1(coordinates)[0][0]; found tuple, expecting float 但是findAt(a[0],a[1],a[2],a[3])这样是可行的 现在a这个list里有几十个坐标 我怎么可以像findAt(a[0],a[1],a[2],a[3])这样把每一个坐标都列在函数的括号里 问一下有没有大神可以帮忙解决这个问题
更新时间:2019-05-04 07:09
最满意答案
findAt函数可以使用可变参数*args,即findAt(*args)。同样还是将几十个坐标放到a列表中,然后直接调用findAt(*a)
2017-09-11 回答
其他回答
改后的代码如下:(python3中input得到的结果是str类型的,要转换才能用)
#!usr/bin/env python3.5
#-*- coding:utf-8 -*-
def countt(a,b,c):
return a[0]*b[1]*c[2] + b[0]*c[1]*a[2] + c[0]*a[1]*b[2] - c[0]*b[1]*a[2] -b[0]*a[1]*c[2] - a[0]*c[1]*b[2]
m,n,p,q=[0]*3,[0]*3,[0]*3,[0]*3
for i in range(3):
print('请依次