待处理的部分文本(为方便阅读,已做换行处理,实际文本没有)如下:
var station_names ='@bjb|北京北|VAP|beijingbei|bjb|0 @bjd|北京东|BOP|beijingdong|bjd|1 @bji|北京|BJP|beijing|bj|2 @bjn|北京南|VNP|beijingnan|bjn|3 @bjx|北京西|BXP|beijingxi|bjx|4 @gzn|广州南|IZQ|guangzhounan|gzn|5 @cqb|重庆北|CUW|chongqingbei|cqb|
最开始的代码是这样的:
r=requests.get(url,verify=False) stations=re.findall(r'([A-Z]+)|([a-z]+)',r.text) stations=dict(stations) stations=dict(zip(stations.values(),stations.keys()))
得到的输出如下:
{ 'acheng': 'ACB', 'aershan': 'ART', 'aershanbei': 'ARX', 'aihe': 'AHP', 'aijiacun': 'AJJ', }
现在在Python中,想进一步,用正则表达式提取出其中的中文站名和对应的英文大写缩写。尝试了多次都失败了。。。请问要怎么写。。。也就是说想要输出的是:
{ '阿城': 'ACB', '阿尔山': 'ART', '阿尔山北': 'ARX', '艾河': 'AHP', '艾家村': 'AJJ', }
12306 站点信息 ,Python3
效果: