首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从PickList解析AutotaskAPI值

从PickList解析AutotaskAPI值
EN

Stack Overflow用户
提问于 2015-09-24 18:32:24
回答 1查看 73关注 0票数 0

我试图将从对AutotaskAPI的查询中获得的数字值与与该数字匹配的选择列表表与实际的定义进行匹配。使用以下代码片段:

代码语言:javascript
复制
for entity in entities:
    for key, value in enumerate(self.queueCode["PicklistValues"]["PickListValue"][0]["Value"]):
        print value

它返回系统中的所有票及其编号值,但for key, value in enumerate(self.queueCode["PicklistValues"]["PickListValue"][0]["Value"])是我用来获取选择列表值的工具。因此,此打印将返回"30098742“从:

代码语言:javascript
复制
(PickListValue){
   Value = "30098742"
   Label = "BF Onsite"
   IsDefaultValue = False
   SortOrder = 44
   parentValue = None
   IsActive = True
   IsSystem = False

如何获得所有Picklist值和相应的标签?

更新:

下面的代码将按照我想要的方式获得Value的数值,但是,我不会迭代所有的Picklist,所以在我的前任中,不去,1,2等等,这会给我所有Picklist的值。

代码语言:javascript
复制
for key, value in enumerate(self.queueCode["PicklistValues"]["PickListValue"][0]["Value"]):
         print value
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-24 23:48:15

由于字典中的"Value"条目是数字的字符串表示形式,所以当您对它进行enumerate时,实际上只是对字符串中的字符进行迭代。示例中的enumerate对象将为您提供每个字符的索引和字符,如下所示:

代码语言:javascript
复制
>>> list(enumerate("30098742"))
[(0, '3'), (1, '0'), (2, '0'), (3, '9'), (4, '8'), (5, '7'), (6, '4'), (7, '2')]

如果您想要的第一个PickList是self.queueCode["PicklistValues"]["PickListValue"][0],那么您可能需要对PickLists的底层列表进行枚举,而不是显式地获取它;如下所示:

代码语言:javascript
复制
for idx, plist in enumerate(self.queueCode["PicklistValues"]["PickListValue"]):
    print "PickList with index {} has value {} and label {}".format(
        idx, plist["Value"], plist["Label"]
    )

顺便提一下,我不建议编写for key, value in enumerate(sequence),因为“键”实际上不是键,而是计数要枚举的项的序号。在本例中,它对应于一个索引,因此我可能会在循环中使用类似于iidx的名称。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32768492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档