国家代码 ISO 3166

国家/二字码/三字码/数字码

410 次访问

ISO 3166 国家代码 · 249 国 / 地区 6 套代码并排

国家 / 地区Alpha-2Alpha-3NumericccTLD区号货币IOCFIFA

国家详情 · 全部代码体系

快速反查 · 输入即出

4 路反向查询:知 Alpha-2 反查国家 / 知国家反查全部代码 / 知 Numeric 反查 / 知货币代码反查。所有匹配本地数据,无 API 调用。

Alpha-2 → 国家 2 位字母
输入 ISO 3166-1 Alpha-2(如 CN / US / JP),返回中文名 + 全代码
等待输入…
Numeric → 国家 3 位数字
输入 ISO 3166-1 Numeric-3(如 156 / 840),返回中文名 + 全代码
等待输入…
国家名 → 全部代码 中 / 英
输入中文名或英文名(China / 中国),返回 Alpha-2 / Alpha-3 / Numeric / IOC / FIFA / ccTLD
等待输入…
货币 / 区号 → 国家 CNY / +86
输入 ISO 4217 货币代码或国际拨号区号,返回使用该代码的所有国家
等待输入…

批量转换 · 多代码体系互转

粘贴一列代码(按空格 / 逗号 / 换行分隔均可),选择源体系和目标体系,一键批量转换。无效项标 ⚠

请点击"立即转换"

代码使用场景 · 各体系的实际应用领域

ISO 3166 / IOC / FIFA / ccTLD 等多套代码并存的根本原因——不同场景偏好不同长度 / 来源 / 命名权威机构

📦
国际邮件 / 海关报关
ISO 3166-1 Alpha-2
EMS / DHL / UPS 国际包裹地址栏必填两位国码;海关 H2018 报关单"运抵国别"亦用 Alpha-2
🌐
互联网 / 国家域名
ccTLD(基于 Alpha-2)
.cn / .us / .jp 由 IANA 委派各国注册局管理,绝大多数同 ISO Alpha-2(例外:英国 .uk)
🏅
国际体育赛事
IOC / FIFA(3 位字母)
奥运用 IOC(CHN/USA),世界杯用 FIFA。差异如英国:IOC = GBR,FIFA 分 ENG/SCO/WAL/NIR
🏦
银行 / 跨境支付
ISO 3166 Alpha-2 + 货币
SWIFT BIC 第 5-6 位 + IBAN 前 2 位均为 Alpha-2;ISO 4217 货币代码前两位多同 Alpha-2
📞
国际电话拨号
ITU E.164(与 ISO 3166 平行)
+86 / +1 / +44 等区号由 ITU 分配,独立于 ISO。北美 NANP 的 +1 覆盖多国 / 多地区
📊
联合国统计 / 数据库
Numeric-3(M49 子集)
联合国 M49 与 ISO 3166-1 Numeric 保持一致。数据库主键偏好数字代码(避免字符编码差异)
✈️
民航 / 出入境
Alpha-3(机器可读护照)
护照机读区 MRZ 第二行的国籍 / 签发国均为 Alpha-3;航司订票系统亦偏好 3 位字母
💻
软件本地化 / Locale
BCP 47(lang-COUNTRY)
zh-CN / en-US / ja-JP 等 Locale 后半段使用 Alpha-2;Unicode CLDR 也以此为基础

历史代码 · 已停用 / 转换

ISO 3166-3 维护已分裂 / 合并 / 改名的历史国家代码。这些代码在解析老数据库 / 历史档案时仍有用途。 ISO 规则:曾使用过的代码在 50 年内不再分配给其他国家。

ISO 3166 标准技术规范

ISO 3166-1 Alpha-2
两位大写拉丁字母,如 CN US。约 249 个有效代码。最常见的国家标识方式,被 Unicode CLDR / DNS ccTLD / IBAN 等广泛沿用
ISO 3166-1 Alpha-3
三位大写拉丁字母,如 CHN USA。字母代码在视觉上更易识别国家名,机器可读护照 / 民航订票系统偏好
ISO 3166-1 Numeric
三位数字代码(含前导 0),如 156(中国)840(美国)076(巴西)。与联合国统计司 M49 编码一致。优势:跨字符集兼容、不受语言变更影响
ISO 3166-2 区划代码
一级行政区代码 = Alpha-2 + - + 1-3 位,如 CN-BJ(北京)US-CA(加州)
ISO 3166-3 历史代码
已停用国家 4 位字母代码,如 SUHH(苏联→俄联邦 + 14 国)YUCS(南斯拉夫→6 国)。前 2 位是原 Alpha-2,后 2 位标识接续状态
IOC 奥委会代码
由国际奥委会维护,3 位字母。大多数同 Alpha-3,差异如:GER(德国,Alpha-3 是 DEU)SUI(瑞士,DEU/CHE)NED(荷兰,NLD)
FIFA 足球代码
由国际足联维护,3 位字母。中国为 CHN,但英国分拆为 ENG / SCO / WAL / NIR 4 个独立成员协会,与 ISO / IOC 都不同
维护机构
ISO 3166/MA(Maintenance Agency),日内瓦秘书处发布勘误表。台湾 / 香港 / 澳门以"地区"身份列于 TW HK MO
推荐使用
无特殊要求时优先 Alpha-2(最普遍);存数据库主键用 Numeric(稳定且短);面向人类阅读用 Alpha-3(直观)。混用同一字段时 禁止——必须固定一套体系

关于本工具

了解工具定位 · 使用场景 · 对比优势

使用场景

🌐

外贸报关单填写

外贸跟单员在处理出口报关单时,需要准确填写目的国代码(如中国 CHN、美国 USA)。手动翻查表格易出错,导致清关延误或被罚款。本工具支持按中文名、二字码、三字码、数字码任意一种输入,秒级返回全部对应编码,确保报关单数据与海关系统一致,减少退单风险。

💻

API 接口参数校验

后端开发者在对接国际支付或物流 API 时,接口文档要求传递 ISO 3166-1 国家代码(如日本 JP、德国 DE)。用本工具可快速校验用户输入的国家名是否与标准代码匹配,或从代码反向获取国家全称,避免因代码错误导致的请求失败或数据解析异常。

📊

跨国数据分析清洗

数据分析师从多源获取的用户注册数据中,国家字段格式混乱(有全称、二字码、三字码)。需统一为数字码才能关联联合国统计数据库。本工具提供批量查询能力,一键将不同格式的国家信息标准化为数字码,节省手动清洗时间,保证数据一致性。

✈️

国际机票预订系统

旅行社票务员在 GDS 系统中预订国际机票时,目的地城市需关联国家二字码(如泰国 TH)。面对不熟悉的冷门国家(如布基纳法索 BFA),使用本工具输入中文名即可获取正确二字码,避免因代码输错导致出票失败或产生改签费用。

对比矩阵本工具 vs 竞品 vs 传统方法

维度本工具竞品 A: countrycode.org传统方法: 查维基百科/手动维护
数据隐私纯浏览器端处理,数据不离开本地需上传至服务器查询依赖第三方网站或本地文档,数据可能被记录
处理速度输入即出,1 秒内返回结果受网络延迟影响,通常 2-5 秒手动翻阅或搜索,耗时数分钟至数小时
离线可用完全离线,依赖本地静态资源必须联网如果下载了离线数据库或 PDF,可离线,但更新不便
数据更新数据随工具版本更新,非实时通常更新较及时,但依赖网站维护依赖个人手动核对,极易过时或出错
批量处理单次查询单个国家支持批量查询(需上传文件或列表)手动逐条查询,效率极低
使用门槛打开即用,无需学习成本界面简单,但需理解输入格式需要知道如何搜索、筛选、核对权威来源

使用指南

上手步骤 · 输入输出 · 避坑提示

输入输出示例8 个典型场景,覆盖常规、边界与易错

输入输出说明
中国CN | CHN | 156典型场景:中文国家名称查询
CN中国 | CHN | 156典型场景:已知二字码反查全称
USA美国 | US | 840典型场景:三字码查询(常见缩写)
004阿富汗 | AF | AFG边界 case:数字码带前导零(三位数字)
gb英国 | GB | 826易错 case:输入小写字母,自动忽略大小写
台湾中国台湾 | TW | TWN | 158边界 case:地区名称,ISO 3166-2 标准处理
XZ未找到匹配的国家或地区边界 case:不存在的二字码(未分配)
999未找到匹配的国家或地区边界 case:不存在的数字码(ISO 未分配)

常见错误对照8 个常踩的坑 · 错误 → 修复

1. 把中文国家名直接当查询输入

错误
中国
修复
CN 或 CHN 或 156

工具按 ISO 3166 标准码(二字/三字/数字)检索,不识别中文名;中文名需先映射到标准码才能查。

2. 把二字码和三字码混用在同一字段

错误
CN 或 CHN
修复
CN(二字码)或 CHN(三字码),每次只输一种格式

二字码和三字码是两套独立编码,混写会导致解析失败;工具按输入长度判断类型,混写无结果。

3. 输入数字码时带前导零或空格

错误
004 或 04 或 4
修复
4(无前导零,无空格)

ISO 3166-1 数字码是 3 位数字,但实际存储为整数;前导零会被忽略,空格导致匹配失败。

4. 把地区代码当国家代码用

错误
EU(欧盟)或 HK(香港)
修复
HK 在工具中可能返回无结果,应查 ISO 3166-1 正式国家列表

ISO 3166-1 仅包含主权国家和部分属地;HK 是 ISO 3166-2 地区代码,不在本工具范围内。

5. 输入大小写混写

错误
cN 或 Chn
修复
CN 或 CHN(统一大写)

ISO 3166 标准码严格区分大小写:二字码全大写,三字码全大写;小写或混写不匹配。

6. 把旧国家代码当有效输入

错误
CS(捷克斯洛伐克)或 SU(苏联)
修复
CZ(捷克)或 SK(斯洛伐克);RU(俄罗斯)

ISO 3166-1 会废弃已解体国家的代码;工具只保留当前有效代码,旧代码返回空结果。

7. 输入时带标点或括号

错误
CN, 或 CN.
修复
CN(无任何标点)

工具按精确字符串匹配,任何额外字符(逗号、句号、括号)都导致匹配失败。

8. 把英文国家全称当输入

错误
China 或 United States
修复
CN 或 US

工具只识别标准代码(二字/三字/数字),不解析国家名称;全称输入无结果。

工作原理

公式推导 · 流程图解 · 依据出处

核心公式

国家代码映射:{国家名称} → {Alpha-2, Alpha-3, Numeric}

变量说明

  • 国家名称 — ISO 3166-1 标准中的国家或地区名称
  • Alpha-2 — 2 字母代码(如 CN)
  • Alpha-3 — 3 字母代码(如 CHN)
  • Numeric — 3 位数字代码(如 156)

示例

输入国家名称「中国」,工具返回:Alpha-2 = CN,Alpha-3 = CHN,Numeric = 156。这是 ISO 3166-1 标准中分配给中国的唯一代码组合。

适用范围

适用于 ISO 3166-1 标准中收录的 249 个国家和地区(含主权国家、非主权属地及特殊区域)。不适用于非标准名称、历史国名或用户自定义缩写。数据来源:ISO 3166-1:2020 标准及 ISO 在线维护平台。

原理图

输入国家名称中文/英文/本地名本地映射匹配ISO 3166 内置表展示三组代码二字码 / 三字码 / 数字码输入示例"中国" / "China"匹配过程模糊匹配 + 别名输出示例CN / CHN / 156全程在浏览器内完成,无网络请求,数据不离开本地
用户输入 本地处理 输出结果 示例说明

开发者集成

3 种主流语言 · 复制即用

import pycountry

# 根据二字码查找国家信息
code = "CN"
try:
    country = pycountry.countries.get(alpha_2=code)
    if country:
        print(f"名称: {country.name}")
        print(f"二字码: {country.alpha_2}")
        print(f"三字码: {country.alpha_3}")
        print(f"数字码: {country.numeric}")
    else:
        print(f"未找到代码 {code}")
except Exception as e:
    print(f"错误: {e}")

# 输出:
# 名称: China
# 二字码: CN
# 三字码: CHN
# 数字码: 156
package main

import (
	"fmt"
	"github.com/icza/gox/gox"
)

func main() {
	// 使用标准库查找国家代码
	// 实际项目中可引入 github.com/icza/gox 或自行实现映射
	countryMap := map[string]struct {
		Name, Alpha3, Numeric string
	}{
		"CN": {"China", "CHN", "156"},
		"US": {"United States", "USA", "840"},
	}

	code := "CN"
	if c, ok := countryMap[code]; ok {
		fmt.Printf("名称: %s\n", c.Name)
		fmt.Printf("二字码: %s\n", code)
		fmt.Printf("三字码: %s\n", c.Alpha3)
		fmt.Printf("数字码: %s\n", c.Numeric)
	} else {
		fmt.Printf("未找到代码 %s\n", code)
	}
}
// 使用 world-countries 包(npm install world-countries)
const countries = require('world-countries');

const code = 'CN';
const country = countries.find(c => c.cca2 === code);

if (country) {
  console.log(`名称: ${country.name.common}`);
  console.log(`二字码: ${country.cca2}`);
  console.log(`三字码: ${country.cca3}`);
  console.log(`数字码: ${country.ccn3}`);
} else {
  console.log(`未找到代码 ${code}`);
}

// 输出:
// 名称: China
// 二字码: CN
// 三字码: CHN
// 数字码: 156

常见问题

7 个高频疑问

这个国家代码 ISO 3166 工具的代码数据准吗?是哪里来的?
数据直接来自 ISO 3166 国际标准,包含全球 249 个国家和地区(含主权国家、属地、特殊地区)的二字码、三字码、数字码。本工具在发布时已核对 ISO 官方最新版(2023 年更新版),覆盖联合国成员国、非联合国成员观察员国及部分自治属地。如果发现某个地区代码与预期不同(如台湾地区代码为 TW/TWN/158),这是因为 ISO 标准按地理而非政治定义,与日常习惯可能不同。数据更新频率约每年一次,跟随 ISO 官方版本升级。
为什么我查「英国」显示的是 GB 而不是 UK?
ISO 3166-1 标准中,英国的正式二字码是 GB(Great Britain),三字码是 GBR,数字码是 826。UK 是 United Kingdom 的缩写,虽然日常使用更普遍,但 ISO 标准中 UK 是保留代码,并未作为主代码使用。本工具严格遵循 ISO 标准输出主代码,所以显示 GB 而非 UK。如果确实需要 UK 这个码,可以手动备注,但工具不提供别名映射。
这个工具有没有收录所有国家和地区?比如有争议的地区能查到吗?
收录的是 ISO 3166 标准中列出的全部条目,共 249 个。主权国家、海外领土、自治属地都有,例如格陵兰(GL/GRL/304)、直布罗陀(GI/GIB/292)。但 ISO 标准不包含有争议但未被广泛承认的地区(如阿布哈兹、南奥塞梯),也不包含非地理实体(如欧盟的代码 EU 是保留代码,不是正式条目)。如果你需要查的某地区不在列表中,说明它未被 ISO 3166 收录,建议改用其他标准(如 UN/LOCODE)。
这个工具能批量查询多个国家的代码吗?一次最多查几个?
支持一次输入多个国家名称或代码,用逗号、空格或换行分隔即可。输入框没有硬性数量限制,但实测同时输入 50 个国家时,页面渲染和搜索匹配仍然流畅。如果输入较多(如 100 个以上),建议分批查询,因为浏览器侧搜索是实时过滤的,输入过多可能导致结果列表过长不便于查看。不支持文件上传批量导入。
我输入中文国家名查不到,是怎么回事?
本工具的国家名称默认使用 ISO 标准的英文名称(如 China、United States),不内置中文名称映射。如果直接输入「中国」查不到,请改输入「China」或代码「CN」/「CHN」/「156」。如果工具界面提供了中文搜索选项(如下拉框带中文),则可以直接用中文;否则需要手动对照英文名。建议先记住常用国家的英文名再使用。
ISO 3166 代码和 IATA 机场代码、UN/LOCODE 是什么关系?能互查吗?
ISO 3166 是国家/地区代码标准;IATA 机场代码(如 PEK)是机场代码,两者不同。UN/LOCODE 则是在 ISO 3166 基础上加城市代码(如 CNBJS 表示中国北京)。本工具只处理国家级别代码,不包含城市或机场信息。如果你需要从国家代码查机场代码,或从城市查国家代码,建议先用本工具确定国家代码,再到 IATA 或 UN/LOCODE 数据库查下级信息。
这个工具是离线的吗?没网络能不能用?
是纯浏览器端(FE)实现,所有代码和数据在页面加载时一次性下载到本地。首次打开需要网络加载页面资源,之后只要不关闭页面或刷新,即使断网也能正常查询。如果刷新页面,需要重新加载(浏览器缓存可能保留数据,但建议有网络时使用)。完全离线使用建议把页面保存为本地 HTML 文件,但数据更新将无法同步。
选择 打开 +新窗口 esc关闭