博客
关于我
【Python --- lambda表达式】 对数据集中的各国家人口数进行排序
阅读量:324 次
发布时间:2019-03-04

本文共 947 字,大约阅读时间需要 3 分钟。

【Python — lambda表达式】对数据集中的各国家人口数进行排序


下面是关于世界国家人口统计的数据,利用lambda表达式对其进行排序。

数据集以制表符\t为单位进行排版,主要包含以下几列信息:

  • 国家名称
  • 大洲信息
  • 人口数量

数据提取与解析

代码逻辑如下:

import pandas as pddata = open('data/countries_zh.txt', 'r', encoding='utf-8')countries = []for line in data:    line = line.strip()    arr = line.split("\t")    name = arr[1]    caption = arr[3]    population = int(arr[4])    countries.append([name, caption, population])

代码功能:

  • 读取文件并解析每一行数据
  • 提取国家名称、首都名称和人口数量
  • 存储到列表中
  • 数据排序方法

    以下是两种常见的排序方法:

    方法一:自定义函数

    def get_population(country):    return country[2]countries.sort(key=get_population)for each_country in countries:    print(each_country)

    代码功能:

  • 定义一个函数返回人口数量
  • 使用sort方法对数据进行排序
  • 输出排序后的结果
  • 方法二:Lambda表达式

    countries.sort(key=lambda country: country[2])for each_country in countries:    print(each_country)

    代码功能:

  • 直接使用lambda表达式作为排序依据
  • lambda表达式简化了代码书写
  • 代码更为简洁易懂
  • 总结

    lambda表达式在排序操作中具有显著优势:

  • 代码简洁,易于阅读
  • 执行效率较高
  • 适合简单的排序场景
  • 在实际应用中,选择哪种方法取决于具体需求。如果需要复杂的排序逻辑,建议使用自定义函数;而对于简单的场景,lambda表达式是更优选择。

    转载地址:http://bweq.baihongyu.com/

    你可能感兴趣的文章
    OpenStack的基本概念与架构详解
    查看>>
    Openstack的视频学习
    查看>>
    openstack虚拟机迁移live-migration中libvirt配置
    查看>>
    ORACEL学习--理解over()函数
    查看>>
    Oracle 11g数据库安装和卸载教程
    查看>>
    ORACLE Bug 4431215 引发的血案—原因分析篇
    查看>>
    oracle dblink 创建使用 垮库转移数据
    查看>>
    oracle dblink结合同义词的用法 PLS-00352:无法访问另一数据库
    查看>>
    Oracle dbms_job.submit参数错误导致问题(ora-12011 无法执行1作业)
    查看>>
    oracle dg switchover,DG Switchover fails
    查看>>
    Oracle EBS环境下查找数据源(OAF篇)
    查看>>
    Oracle GoldenGate Director安装和配置(无图)
    查看>>
    oracle script
    查看>>
    Oracle select表要带双引号的原因
    查看>>
    Oracle SOA Suit Adapter
    查看>>
    Oracle Spatial空间数据库建立
    查看>>
    UML— 活动图
    查看>>
    Oracle Statspack分析报告详解(一)
    查看>>
    oracle where 条件的执行顺序分析1
    查看>>
    oracle 使用leading, use_nl, rownum调优
    查看>>