博客
关于我
【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/

    你可能感兴趣的文章
    oracle11g dataguard物理备库搭建(关闭主库cp数据文件到备库)
    查看>>
    Oracle11G基本操作
    查看>>
    Oracle11g服务详细介绍及哪些服务是必须开启的?
    查看>>
    Oracle11g静默安装dbca,netca报错处理--直接跟换操作系统
    查看>>
    oracle12安装软件后安装数据库,然后需要自己配置监听
    查看>>
    Oracle——08PL/SQL简介,基本程序结构和语句
    查看>>
    Oracle——distinct的用法
    查看>>
    Oracle、MySQL、SQL Server架构大对比
    查看>>
    oracle下的OVER(PARTITION BY)函数介绍
    查看>>
    Oracle中DATE数据相减问题
    查看>>
    Oracle中merge into的使用
    查看>>
    oracle中sql查询上月、本月、上周、本周、昨天、今天的数据!
    查看>>
    oracle中sql的case语句运用--根据不同条件去排序!
    查看>>
    Oracle中Transate函数的使用
    查看>>
    oracle中关于日期问题的汇总!
    查看>>
    Oracle中常用的语句
    查看>>
    Oracle中序列的操作以及使用前对序列的初始化
    查看>>
    oracle中新建用户和赋予权限
    查看>>
    Oracle中的NVL,NVL2,NULLIF以及COALESCE函数使用
    查看>>
    Oracle中的rownum 和rowid的用法和区别
    查看>>