中国有多少个机场,城市分布 OpenClaw成果

import openpyxlfrom openpyxl.styles import Font, Alignment, PatternFill, Border, Sidefrom openpyxl.utils import get_column_letter# 各省份机场城市数据data = [ ("新疆维吾尔自治区", 27, ["乌鲁木齐", "喀什", "库尔勒", "阿克苏", "伊犁伊宁", "和田", "库车", "克拉玛依", "阿勒泰", "哈密", "石河子", "图木舒克", "阿拉尔", "博乐", "莎车", "塔城", "吐鲁番", "于田", "若羌", "布尔津", "且末", "新源", "富蕴", "塔什库尔干", "昭苏", "奇台", "和静"]), ("内蒙古自治区", 19, ["呼和浩特", "呼伦贝尔海拉尔", "鄂尔多斯", "包头", "赤峰", "通辽", "锡林浩特", "乌兰浩特", "乌海", "满洲里", "巴彦淖尔", "二连浩特", "扎兰屯", "霍林郭勒", "阿拉善左旗", "乌兰察布", "阿尔山", "额济纳旗", "阿拉善右旗"]), ("四川省", 17, ["成都", "绵阳", "泸州", "宜宾", "达州", "西昌", "南充", "广元", "巴中", "九寨沟", "稻城", "攀枝花", "甘孜", "阿坝红原", "甘孜康定", "阆中"]), ("云南省", 15, ["昆明", "丽江", "西双版纳", "大理", "德宏芒市", "腾冲", "保山", "迪庆香格里拉", "昭通", "澜沧", "临沧", "文山砚山", "沧源", "普洱", "宁蒗"]), ("黑龙江省", 13, ["哈尔滨", "佳木斯", "大庆", "牡丹江", "齐齐哈尔", "鸡西", "黑河", "大兴安岭", "伊春", "漠河", "建三江", "抚远", "五大连池"]), ("贵州省", 11, ["贵阳", "遵义", "兴义", "铜仁", "毕节", "凯里", "安顺", "六盘水", "黎平", "黔南荔波"]), ("山东省", 10, ["青岛", "济南", "烟台", "威海", "临沂", "济宁", "东营", "日照", "菏泽", "潍坊"]), ("湖南省", 10, ["长沙", "张家界", "衡阳", "常德", "岳阳", "郴州", "怀化", "永州", "邵阳", "湘西"]), ("广东省", 9, ["广州", "深圳", "珠海", "揭阳", "湛江", "惠州", "佛山", "韶关", "梅州"]), ("江苏省", 9, ["南京", "无锡", "常州", "南通", "扬州/泰州", "徐州", "盐城", "淮安", "连云港"]), ("甘肃省", 9, ["兰州", "敦煌", "庆阳", "张掖", "嘉峪关", "陇南", "金昌", "甘南", "天水"]), ("辽宁省", 8, ["沈阳", "大连", "丹东", "锦州", "营口", "朝阳", "鞍山", "长海"]), ("湖北省", 8, ["武汉", "宜昌", "襄阳", "恩施", "十堰", "荆州", "鄂州", "神农架"]), ("广西壮族自治区", 8, ["南宁", "桂林", "北海", "柳州", "玉林", "梧州", "百色", "河池"]), ("山西省", 8, ["太原", "运城", "临汾", "大同", "吕梁", "忻州", "长治", "朔州"]), ("西藏自治区", 8, ["拉萨", "林芝", "昌都", "阿里", "日喀则", "山南"]), ("浙江省", 7, ["杭州", "宁波", "温州", "义乌", "舟山", "台州", "衢州"]), ("江西省", 7, ["南昌", "赣州", "吉安", "宜春", "景德镇", "上饶", "九江"]), ("青海省", 7, ["西宁", "玉树", "格尔木", "果洛", "海西花土沟", "海西德令哈", "海北祁连"]), ("福建省", 6, ["厦门", "福州", "泉州", "三明", "连城", "武夷山"]), ("吉林省", 6, ["长春", "延吉", "白山", "通化", "白城", "松原"]), ("安徽省", 6, ["合肥", "芜湖", "阜阳", "安庆", "黄山", "池州"]), ("河北省", 6, ["石家庄", "邯郸", "唐山", "张家口", "承德", "秦皇岛"]), ("重庆市", 5, ["重庆", "万州", "黔江", "巫山", "仙女山"]), ("陕西省", 5, ["西安", "榆林", "延安", "汉中", "安康"]), ("河南省", 5, ["郑州", "洛阳", "南阳", "信阳", "安阳"]), ("海南省", 4, ["海口", "三亚", "琼海", "三沙"]), ("宁夏回族自治区", 3, ["银川", "中卫", "固原"]), ("上海市", 2, ["上海"]), ("北京市", 2, ["北京"]), ("天津市", 1, ["天津"]),]# 创建工wb = openpyxl.Workbook()ws = wb.activews.title = "中国机场城市分布"# 样式定义header_font = Font(name='微软雅黑', bold=True, color='FFFFFF', size=11)header_fill = PatternFill(start_color='4472C4', end_color='4472C4', fill_type='solid')header_alignment = Alignment(horizontal='center', vertical='center', wrap_text=True)province_font = Font(name='微软雅黑', bold=True, size=10)province_fill = PatternFill(start_color='D9E1F2', end_color='D9E1F2', fill_type='solid')province_alignment = Alignment(horizontal='center', vertical='center', wrap_text=True)city_font = Font(name='微软雅黑', size=10)city_alignment = Alignment(horizontal='left', vertical='center', wrap_text=True)border = Border( left=Side(style='thin'), right=Side(style='thin'), top=Side(style='thin'), bottom=Side(style='thin'))# 写入表头headers = ["序号", "省份", "机场数量", "城市列表"]for col, header in enumerate(headers, 1): cell = ws.cell(row=1, column=col, value=header) cell.font = header_font cell.fill = header_fill cell.alignment = header_alignment cell.border = border# 写入数据row = 2for idx, (province, count, cities) in enumerate(data, 1): city_str = "、".join(cities) ws.cell(row=row, column=1, value=idx).alignment = Alignment(horizontal='center', vertical='center') ws.cell(row=row, column=1).border = border province_cell = ws.cell(row=row, column=2, value=province) province_cell.font = province_font province_cell.fill = province_fill province_cell.alignment = province_alignment province_cell.border = border count_cell = ws.cell(row=row, column=3, value=count) count_cell.alignment = Alignment(horizontal='center', vertical='center') count_cell.border = border city_cell = ws.cell(row=row, column=4, value=city_str) city_cell.font = city_font city_cell.alignment = city_alignment city_cell.border = border row += 1# 添加汇总行ws.cell(row=row, column=1, value="合计").font = Font(name='微软雅黑', bold=True)ws.cell(row=row, column=1).alignment = Alignment(horizontal='center', vertical='center')ws.cell(row=row, column=1).border = borderws.cell(row=row, column=2, value=f"共{len(data)}个省份/直辖市/自治区").font = Font(name='微软雅黑', bold=True)ws.cell(row=row, column=2).border = bordertotal_airports = sum(item[1] for item in data)ws.cell(row=row, column=3, value=total_airports).font = Font(name='微软雅黑', bold=True, color='FF0000')ws.cell(row=row, column=3).alignment = Alignment(horizontal='center', vertical='center')ws.cell(row=row, column=3).border = bordertotal_cities = sum(len(item[2]) for item in data)ws.cell(row=row, column=4, value=f"共{total_cities}个城市").font = Font(name='微软雅黑', bold=True)ws.cell(row=row, column=4).border = border# 设置列宽ws.column_dimensions['A'].width = 8ws.column_dimensions['B'].width = 20ws.column_dimensions['C'].width = 10ws.column_dimensions['D'].width = 50# 设置行高ws.row_dimensions[1].height = 25for r in range(2, row + 1): ws.row_dimensions[r].height = 30# 冻结首行ws.freeze_panes = 'A2'# 保存文件output_path = r"C:\Users\yl\Desktop\GIS\中国机场城市分布.xlsx"wb.save(output_path)print(f"文件已保存至: {output_path}")print(f"共{len(data)}个省份,{total_airports}个机场,{total_cities}个城市")
夜雨聆风