将数组转换为Iron Python中的字符串

时间:2013-06-12 12:48:43

标签: arrays ironpython spotfire

我对Iron Phyton非常非常新,我正在尝试创建一个允许用户在下拉列表中选择“全部”功能的脚本。这是我到目前为止的代码,但是我收到一条错误消息,说“属性值的类型'System.String []'与预期的'System.String'类型不匹配”

我在Spotfire编码,我不能在属性中存储数组,因为只允许字符串。我搜索过我可以使用','。join(mylist)

但我只是不知道放在哪里...请帮助,谢谢......代码在下面

from System import Array
from Spotfire.Dxp.Data import IndexSet
from Spotfire.Dxp.Data import DataValueCursor

#Get access to the Column from which we want to get the values from
myCol = Document.ActiveDataTableReference.Columns["Business Group"]

rowCount = Document.ActiveDataTableReference.RowCount
rowsToInclude = IndexSet(rowCount,True)


#Create a cursor to the Column we wish to get the values from
cursor1 = DataValueCursor.CreateFormatted(Document.ActiveDataTableReference.Columns ["BusinessGroup"])


strArray = Array.CreateInstance(str,rowCount)


#Loop through all rows, retrieve value for specific column, and add value into array
 for  row in  Document.ActiveDataTableReference.GetRows(rowsToInclude,cursor1):
 rowIndex = row.Index
 value1 = cursor1.CurrentValue
 strArray[rowIndex-1] = value1   

#Set property to array created above
myCol.Properties.SetProperty("BusinessGroup",strArray)

1 个答案:

答案 0 :(得分:2)

假设您的代码在代码段的最后一行失败,因为“BusinessGroup”应该是字符串而不是字符串数组,您可以使用以下方式加入:

myCol.Properties.SetProperty("BusinessGroup", ', '.join(strArray))