class CountryLanguageMapper: # 初始化一个字典,映射国家到语言代码 country_to_language = { "中国大陆": "zh-CN", "台湾": "zh-TW", "香港": "zh-TW", "澳门": "zh-TW", "美国": "en", "英国": "en", "澳大利亚": "en", "日本": "ja", "韩国": "ko", "俄罗斯": "ru", "法国": "fr", "德国": "de", "意大利": "it", "西班牙": "es", "墨西哥": "es", "巴西": "pt", "葡萄牙": "pt", "印度": "hi", "泰国": "th", "越南": "vi", "马来西亚": "ms", "印度尼西亚": "id", "阿联酋": "ar", "沙特阿拉伯": "ar", "埃及": "ar", "以色列": "he", "缅甸": "my", "斯里兰卡": "ta", "巴基斯坦": "ur", "孟加拉国": "bn", "波兰": "pl", "荷兰": "nl", "罗马尼亚": "ro", "土耳其": "tr", "老挝": "lo", "乌克兰": "uk", "芬兰": "fi", "南非": "af", "阿尔巴尼亚": "sq", "安道尔": "ca", "安提瓜和巴布达": "en", "阿根廷": "es", "亚美尼亚": "hy", "奥地利": "de", "阿塞拜疆": "az", "巴哈马": "en", "巴林": "ar", "巴巴多斯": "en", "白俄罗斯": "be", "比利时": "fr", "伯利兹": "en", "贝宁": "fr", "不丹": "dz", "玻利维亚": "es", "波斯尼亚和黑塞哥维那": "bs", "博茨瓦纳": "en", "文莱": "ms", "保加利亚": "bg", "布基纳法索": "fr", "布隆迪": "fr", "柬埔寨": "km", "喀麦隆": "fr", "加拿大": "en", "佛得角": "pt", "开曼群岛": "en", "中非共和国": "fr", "乍得": "fr", "智利": "es", "中国": "zh-CN", "圣诞岛": "en", "科科斯群岛": "en", "哥伦比亚": "es", "科摩罗": "ar", "刚果": "fr", "库克群岛": "en", "哥斯达黎加": "es", "科特迪瓦": "fr", "克罗地亚": "hr", "古巴": "es", "库拉索": "nl", "塞浦路斯": "el", "捷克": "cs", "丹麦": "da", "吉布提": "fr", "多米尼克": "en", "多米尼加共和国": "es", "厄瓜多尔": "es", "萨尔瓦多": "es", "赤道几内亚": "es", "厄立特里亚": "ti", "爱沙尼亚": "et", "埃斯瓦蒂尼": "en", "埃塞俄比亚": "am", "福克兰群岛": "en", "法罗群岛": "fo", "斐济": "en", "法属圭亚那": "fr", "法属波利尼西亚": "fr", "法属南部领地": "fr", "加蓬": "fr", "冈比亚": "en", "格鲁吉亚": "ka", "加纳": "en", "直布罗陀": "en", "希腊": "el", "格陵兰": "kl", "格林纳达": "en", "瓜德罗普": "fr", "关岛": "en", "危地马拉": "es", "根西岛": "en", "几内亚": "fr", "几内亚比绍": "pt", "圭亚那": "en", "海地": "fr", "赫德岛和麦克唐纳群岛": "en", "梵蒂冈": "it", "洪都拉斯": "es", "中国香港特别行政区": "zh-TW", "匈牙利": "hu", "冰岛": "is", "伊朗": "fa", "伊拉克": "ar", "爱尔兰": "en", "曼岛": "en", "牙买加": "en", "泽西岛": "en", "约旦": "ar", "哈萨克斯坦": "kk", "肯尼亚": "en", "基里巴斯": "en", "朝鲜": "ko", "科威特": "ar", "吉尔吉斯斯坦": "ky", "拉脱维亚": "lv", "黎巴嫩": "ar", "莱索托": "en", "利比里亚": "en", "利比亚": "ar", "列支敦士登": "de", "立陶宛": "lt", "卢森堡": "fr", "中国澳门特别行政区": "zh-TW", "马达加斯加": "fr", "马拉维": "en", "马尔代夫": "dv", "马里": "fr", "马耳他": "mt", "马绍尔群岛": "en", "马提尼克": "fr", "毛里塔尼亚": "ar", "毛里求斯": "en", "马约特": "fr", "密克罗尼西亚": "en", "摩尔多瓦": "ro", "摩纳哥": "fr", "蒙古": "mn", "黑山": "sr", "蒙特塞拉特": "en", "摩洛哥": "ar", "莫桑比克": "pt", "纳米比亚": "en", "瑙鲁": "en", "尼泊尔": "ne", "新喀里多尼亚": "fr", "新西兰": "en", "尼加拉瓜": "es", "尼日尔": "fr", "尼日利亚": "en", "纽埃": "en", "诺福克岛": "en", "北马其顿": "mk", "北马里亚纳群岛": "en", "挪威": "no", "阿曼": "ar", "帕劳": "en", "巴勒斯坦": "ar", "巴拿马": "es", "巴布亚新几内亚": "en", "巴拉圭": "es", "秘鲁": "es", "菲律宾": "tl", "皮特凯恩群岛": "en", "波多黎各": "es", "卡塔尔": "ar", "留尼汪": "fr", "卢旺达": "rw", "圣巴泰勒米": "fr", "圣赫勒拿": "en", "圣基茨和尼维斯": "en", "圣卢西亚": "en", "法属圣马丁": "fr", "圣皮埃尔和密克隆": "fr", "圣文森特和格林纳丁斯": "en", "萨摩亚": "sm", "圣马力诺": "it", "圣多美和普林西比": "pt", "塞内加尔": "fr", "塞尔维亚": "sr", "塞舌尔": "fr", "塞拉利昂": "en", "新加坡": "zh-CN", "荷属圣马丁": "nl", "斯洛伐克": "sk", "斯洛文尼亚": "sl", "所罗门群岛": "en", "索马里": "so", "南乔治亚岛和南桑威奇群岛": "en", "南苏丹": "en", "苏丹": "ar", "苏里南": "nl", "斯瓦尔巴群岛和扬马延岛": "no", "瑞典": "sv", "瑞士": "de", "叙利亚": "ar", "台湾省": "zh-TW", "塔吉克斯坦": "tg", "坦桑尼亚": "sw", "东帝汶": "tet", "多哥": "fr", "托克劳": "en", "汤加": "to", "特立尼达和多巴哥": "en", "突尼斯": "ar", "土库曼斯坦": "tk", "特克斯和凯科斯群岛": "en", "图瓦卢": "en", "乌干达": "en", "美国本土外小岛屿": "en", "乌拉圭": "es", "乌兹别克斯坦": "uz", "瓦努阿图": "bi", "委内瑞拉": "es", "英属维尔京群岛": "en", "美属维尔京群岛": "en", "瓦利斯和富图纳": "fr", "西撒哈拉": "ar", "也门": "ar", "赞比亚": "en", "津巴布韦": "en", "阿富汗": "fa", "阿尔及利亚": "ar", "美属萨摩亚": "en", "安哥拉": "pt", "安圭拉": "en", "南极洲": "en", "百慕大": "en", "荷属加勒比区": "nl", "布韦岛": "no", "英属印度洋领地": "en", } @classmethod def get_language_code(cls, country): return cls.country_to_language.get(country) # 使用示例 if __name__ == "__main__": mapper = CountryLanguageMapper() countries = ['英国', '美国', '日本', '未知国家'] for country in countries: code = mapper.get_language_code(country) if code: print(f"{country} 对应的语言代码是 {code}") else: print(f"没有找到 {country} 对应的语言代码")