如何从字典(python)中获取最高密钥?

时间:2017-11-16 12:51:49

标签: python dictionary

我是Python新手,我想解决一个小问题

public Page<FloorplanDevice> getFloorplanDevice(@PathVariable("groupId") Long groupId, 
            @PageableDefault Pageable pageable)
    List<FloorplanDevice> list = floorplanService.getFloorplanDevice(groupId);

    MutableSortDefinition sort = pageable.getSort() != null ?
            StreamSupport.stream(pageable.getSort().spliterator(), false)
                .findFirst()
                .map(it -> new MutableSortDefinition(it.getProperty(), it.isIgnoreCase(), it.isAscending()))
                .orElse(null)
            : null;

    PagedListHolder<FloorplanDevice> pageHolder = new PagedListHolder<>(list, sort);
    pageHolder.setPage(pageable.getPageNumber());
    pageHolder.setPageSize(pageable.getPageSize());
    pageHolder.resort();

    List<FloorplanDevice> content = pageHolder.getPageList();
    Page<FloorplanDevice> page = new PageImpl<>(content, pageable, list.size());

    return page;
}

我有这个词,我想得到他的最大关键 例如,在上面的字典中,我想将密钥6作为值

3 个答案:

答案 0 :(得分:2)

有很多方法,一种方法是:

greatest = max(int(k) for k in a)

或人类可读的格式,因此您可以理解逻辑:

greatest = None
for k in a:
    k = int(k)
    if greatest == None:
        greatest = k
    if k > greatest:
        greatest = k

答案 1 :(得分:1)

对于简单,实用的方法:

max(map(int,a))

这会将int函数应用于a的每个键,使用map将字符串转换为整数,然后使用max找到最大值。 / p>

答案 2 :(得分:1)

如果你想要原始密钥(如字符串,而不是整数),你只需使用max int作为关键参数:

a = {"1" : 3, "2" : 3, "6":3}
max(a, key=int)
# '6'