我使用python生成一些POVray渲染代码,用于可视化一些计算数据。我需要从python向POVray代码的字符串传递很多参数。我想把纸条弄干净。所以我想直接使用元组和数组作为字符串格式的参数。像这样:
sign = -1
name = "temp1"
nu = 0.245
boxMin =(0.01,0.01,0.01) # tuple
boxMax =array([0.99,0.99,0.99]) # array
povfile.write( '''
isosurface {
function { %f*( %f - data3d_%s(x,y,z) ) }
contained_by { box { <%f,%f,%f>,<%f,%f,%f> } }
}''' %( sign, nu, name, *boxMin, *boxMax ) )
而不是这样:
^{pr2}$
假设您要在字符串中写入的每个元素都是一个list(或iterable),即使它是由一个元素组成的,那么您可以使用基于列表展平的解决方法。在
想想这个
结果
^{pr2}$您可以使用更聪明的算法来展开参数列表,以便也包括不可编辑的元素(即仅由一个项目组成的元素)。(参见this answer)。在
相关问题 更多 >
编程相关推荐