我想用我的IronPython代码中的列表设置一个文档属性。但是,在添加新的Document Property时,我看不到可用的“List”类型。 唯一接近列表的是String类型 Example of a DXP that has what I want to achieve
但我无法编辑该属性以检查其添加方式。
答案 0 :(得分:2)
在您的示例DXP中,这只是一个逗号分隔值的字符串。
在Python代码中执行此操作:
my_list = ['a', 'b', 'c']
delimiter = ","
Document.Properties["MyProp"] = delimiter.join(my_list)
print Document.Property("MyProp")
>>> 'a,b,c'
稍后,当您需要迭代该值时,您可以轻松地将其转换回列表:
my_prop = Document.Properties["MyProp"]
delimiter = ","
my_list = my_prop.split()
print my_list
>>> ['a', 'b', 'c']
最后一点注意事项:如果你的列表包含整数或除字符串以外的任何东西,你需要加入它有点不同,因为Python对类型很挑剔:
my_list = [1, 2, 3]
delimiter = ","
Document.Properties["MyProp"] = delimiter.join(str(i) for i in my_list)
print Document.Property("MyProp")
>>> '1, 2, 3'
您可以使用int()
将其转换回整数列表:
my_prop = Document.Properties["MyProp"]
delimiter = ","
my_list = [int(i) for i in my_prop.split()]
print my_list
>>> [1, 2, 3]