以下代码使用 Python 的 sorted() 函数对字典 rows 进行排序,根据字典中每个值特定列的值进行排序:

sorted(rows.keys(), key=lambda k: rows[k].split('<td>')[3].split('</td>')[0], reverse=True)

代码解析:

  • sorted(rows.keys(), ...): 使用 sorted() 函数对 rows 字典的键进行排序。
  • key=lambda k: ...: 使用 lambda 表达式定义排序规则。
  • rows[k].split('<td>')[3]: 获取字典中每个值 rows[k] 的特定列,这里假设目标列是 <td> 标签中的第四列。
  • split('</td>')[0]: 获取第四列的值,并将其作为排序依据。
  • reverse=True: 指定排序顺序为降序。

示例:

假设字典 rows 的结构如下:

rows = {
    'row1': '<td>value1</td><td>value2</td><td>value3</td><td>10</td><td>value5</td>',
    'row2': '<td>value1</td><td>value2</td><td>value3</td><td>5</td><td>value5</td>',
    'row3': '<td>value1</td><td>value2</td><td>value3</td><td>15</td><td>value5</td>'
}

使用上述代码进行排序后,rows 字典的键将按照第四列的值降序排序,结果为:

['row3', 'row1', 'row2']

注意事项:

  • 此代码假设字典 rows 中每个值的格式均为包含 <td> 标签的字符串。
  • 目标列的索引(这里是 3)可以根据实际情况进行调整。
  • 可以根据需要更改排序顺序(reverse=Truereverse=False)。

其他排序方法:

除了使用 sorted() 函数,还可以使用 collections.OrderedDict 或其他排序算法来对字典进行排序。具体方法取决于实际需求。

Python 代码:使用 sorted() 函数排序字典,根据特定列的值

原文地址: https://www.cveoy.top/t/topic/hmBq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录