相关疑难解决方法(0)

使用两个键排序Python列表,但只有一个按相反顺序排序

我想知道用两个键对元组列表进行排序的Pythonic方法是什么,其中用一个(并且只有一个)键进行排序将是相反的顺序,而用另一个键进行排序将不区分大小写.更具体地说,我有一个包含元组的列表:

myList = [(ele1A, ele2A),(ele1B, ele2B),(ele1C, ele2C)]
Run Code Online (Sandbox Code Playgroud)

我可以使用以下代码用两个键对其进行排序:

sortedList = sorted(myList, key = lambda y: (y[0].lower(), y[1]))
Run Code Online (Sandbox Code Playgroud)

要按相反顺序排序,我可以使用

sortedList = sorted(myList, key = lambda y: (y[0].lower(), y[1]), reverse = True)
Run Code Online (Sandbox Code Playgroud)

但这会按两个键的相反顺序排序.

任何提示都非常感谢.

python sorting tuples key

9
推荐指数
3
解决办法
4906
查看次数

如何按字典中的值对字典列表进行排序?

可能重复:
在Python中如何按字典值对字典列表进行排序?

我正在编写一个Python 3.2应用程序,我有一个包含以下内容的词典列表:

teamlist = [{ "name":"Bears", "wins":10, "losses":3, "rating":75.00 },
            { "name":"Chargers", "wins":4, "losses":8, "rating":46.55 },
            { "name":"Dolphins", "wins":3, "losses":9, "rating":41.75 },
            { "name":"Patriots", "wins":9, "losses":3, "rating": 71.48 }]
Run Code Online (Sandbox Code Playgroud)

我希望列表按评级键中的值排序.我该如何做到这一点?

python sorting dictionary list

7
推荐指数
1
解决办法
994
查看次数

按列表属性排序列表

我知道有几个关于各种python列表的帖子,但是我尝试了大量的东西并没有完成得到我想要的东西.

我的代码:

    list = []
    things = re.findall('<a class="th tooltip" data-rel=.*? href="(.*?)".*?>   <img src="(.*?)" alt="(.*?)" .*?', content, re.DOTALL)
for url, image, name in things:
    list.append({'url': url, 'image': image, 'name': name})
Run Code Online (Sandbox Code Playgroud)

现在我想按名称对此列表进行排序.我找到了几个说明要使用的帖子,list.sort(key=)但我不知道我应该用什么键.我试过的一切都导致了KeyError.

如果我复制已经解决的帖子,我很抱歉,但我找不到合适的解决方案.

提前致谢.

python python-2.7

7
推荐指数
1
解决办法
2053
查看次数

在Python 3.4中按日期排序字典列表

我有一个这样的词典列表,但有更多的词典:

x = [{"duration":datetime.time(5,30),"date":datetime.date(2016,02,13)},{"duration":datetime.time(3,30),"date":datetime.date(2016,02,11)},{"duration":datetime.time(2,0),"date":datetime.date(2016,02,16)}]
Run Code Online (Sandbox Code Playgroud)

有没有一种方法排序这个列表中升顺序date使用Python的关键字,例如sortedlambda而不进行自定义排序功能?我一直在查看可选参数中的sorted 文档和用法.lambdakey

python arrays sorting dictionary python-3.x

7
推荐指数
1
解决办法
1731
查看次数

按属性顺序迭代字典列表

考虑dict具有date属性和amount属性的s列表:

transactions = [
    {'date': '2013-05-12', 'amount': 1723},
    {'date': '2013-07-23', 'amount': 4523},
    {'date': '2013-02-01', 'amount': 2984},
]
Run Code Online (Sandbox Code Playgroud)

我想添加一个 balance 属性,但为此我必须按date顺序遍历列表:

balance = 0
for t in transactsions:    # Order by date
    balance += t['amount']
    t['balance'] = balance
Run Code Online (Sandbox Code Playgroud)

怎么办呢?如果我dictsTransaction具有dateamount属性的对象替换,那有可能吗?

python sorting

5
推荐指数
1
解决办法
313
查看次数

在Python字典中按嵌套字典排序

我有以下结构

{
    'searchResult' : [{
            'resultType' : 'station',
            'ranking' : 0.5
        }, {
            'resultType' : 'station',
            'ranking' : 0.35
        }, {
            'resultType' : 'station',
            'ranking' : 0.40
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

并希望得到

{
    'searchResult' : [{
            'resultType' : 'station',
            'ranking' : 0.5
        }, {
            'resultType' : 'station',
            'ranking' : 0.4
        }, {
            'resultType' : 'station',
            'ranking' : 0.35
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

尝试了代码没有成功

result = sorted(result.items(), key=lambda k: k[1][0][1]["ranking"], reverse=True)
Run Code Online (Sandbox Code Playgroud)

python sorting dictionary python-2.7

5
推荐指数
2
解决办法
901
查看次数

按特定键的降序对字典列表进行排序

例如,我在python中有一个字典列表

[{'a':3, 'b':4, 'c':5, 'd':'6'}, {'a':1, 'b':2, 'c':7, 'd':'9'}]
Run Code Online (Sandbox Code Playgroud)

我想根据'c'的值按降序排序.我尝试使用sorted()方法key = lambda但没有帮助.

有任何想法吗??

python python-3.x

5
推荐指数
2
解决办法
1万
查看次数

查找关于特定键的字典列表的最小值

我有这个 :

\n\n
[{'prisonniers': [], 's\xc3\xa9curit\xc3\xa9': '47'},{'prisonniers': [],'s\xc3\xa9curit\xc3\xa9':'92'}, {'prisonniers': [], 's\xc3\xa9curit\xc3\xa9': '38'}]\n
Run Code Online (Sandbox Code Playgroud)\n\n

我需要将具有最低 's\xc3\xa9curity' 的字典放入另一个列表中,在这种情况下,我需要这个:

\n\n
myList = [{'prisonniers': [], 's\xc3\xa9curit\xc3\xa9': '38'}]\n
Run Code Online (Sandbox Code Playgroud)\n

python dictionary list

4
推荐指数
1
解决办法
752
查看次数

在Python中按列表中的值对字典中的键进行排序

我已经看过这篇文章这篇文章以及其他许多文章,但还没有找到我的问题的答案,也无法弄明白.

我有一份清单.例如,它看起来像:

Dict = {'a':[1,2,3,4], 'b':[9,8,7,6], 'c':[8,5,3,2]}
Run Code Online (Sandbox Code Playgroud)

我想根据列表中的特定项返回已排序(降序/反向)的键列表.例如,我想根据每个列表中的第4项对a,b,c进行排序.

这应该返回sorted_keys = ['b','a','c']按值排序的列表[6,4,2].

合理?请帮忙......谢谢!

python sorting dictionary list

3
推荐指数
1
解决办法
4601
查看次数

Python:用两个变量理解lambda表达式

在查找计算列表产品的简明方法的同时,我对此响应感到有些困惑.这是有问题的代码:

reduce(lambda x,y:x*y,[3,4,5])

有人可以解释为什么这有效吗?我熟悉使用lambda涉及一个变量的表达式(例如,当使用自定义比较函数进行排序时),但我很困惑为什么以及如何工作.

python lambda

3
推荐指数
1
解决办法
6955
查看次数

标签 统计

python ×10

sorting ×6

dictionary ×5

list ×3

python-2.7 ×2

python-3.x ×2

arrays ×1

key ×1

lambda ×1

tuples ×1