You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中转换ISO格式数据并查找最小人口国家的方法

解决方案

1. 生成字典并找出人口最少的国家

首先通过zip()将两个列表合并为对应关系的字典,再编写辅助函数解析人口字符串为数字,最后利用min()函数定位人口最少的国家:

l1 = ["india","pak","usa","bhutan"]
l2 = ["ISO10_00_000","ISO5_00_000","ISO1_00_000","ISO3_00_000"]

# 合并国家与人口字符串为字典
country_pop_map = dict(zip(l1, l2))

def parse_population(pop_str):
    # 移除前缀和下划线,转换为整数
    cleaned = pop_str.replace("ISO", "").replace("_", "")
    return int(cleaned)

# 按解析后的人口数值取最小值对应的国家
min_pop_country = min(country_pop_map.items(), key=lambda item: parse_population(item[1]))[0]

print(f"人口最少的国家:{min_pop_country}")

运行结果为 usa,因为其对应的人口字符串解析后是100000,是所有样本中最小的。

2. "ISO10_00_000"的含义与转换方法

含义

这个字符串是自定义的人口标识格式:

  • ISO 大概率是内部项目/数据来源的前缀标识(并非标准ISO编码);
  • 下划线分隔的数字是为了提升可读性,10_00_000 对应数值1000000(一千万),是示例中的印度人口数据(仅为演示用,非真实数据)。

转换方法

只需三步即可转为数字:

  • 移除开头的ISO前缀;
  • 删除所有下划线_;
  • 将处理后的字符串转为整数(或浮点数,若有小数需求)。

示例代码:

pop_str = "ISO10_00_000"
num = int(pop_str.replace("ISO", "").replace("_", ""))
print(num)  # 输出:1000000

内容的提问来源于stack exchange,提问作者Swapnil Sakhare

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 10:35:41