python输入城市名称_「Python」每日一练:列表创建身份证城市代码

编程题

列表创建之身份证域市代号

现有湖南省各城市所对应的身份证代号的字符串,现要求将代号及所对应的城市分别保存到2个列表中,要求相应代号和其城市的素引一致。id的数据如下:

id="4301,长沙市;4302,株洲市;4303,湘潭市;4304,衡阳市;4305,邵阳市;4306,岳阳市;\ 4307,常德市;4308,张家界市;4309,益阳市;4310,郴州市;4311,永州市;4312,怀化市;4313,娄底市;\ 4321,株洲市;4322,岳阳地区;4323,益阳市;4325,娄底市;4326,邵阳市;4327,衡阳市;\ 4328,郴州市;4329,永州市;4330,怀化市;"

程序编写要求: 要求使用for语句进行列表元素的增加

思路分析

题目涉及的主要知识点有:(1)字符串的查找、替换、截取函数(2)列表的创建,插入等观察发现字符串中既包含城市编号,也包含城市名称,还有隔断符“,”和“;”。因此我们采用以下策略实现编程任务:(1)将隔断符替换成一种,然后间字符串分隔成若干子字符串。(2)判断子串类型,数字则为编号,非数字则为名称。也可以通过奇偶数判断,奇数为数字,偶数为名称进行处理编码实现

#!/usr/bin/env python 3# -*- coding: utf-8 -*-# @Author : 青松# @Time : 2020/3/22 11:02# @Site : www.itclub16.com#城市id字符串str_id="4301,长沙市;4302,株洲市;4303,湘潭市;4304,衡阳市;4305,邵阳市;4306,岳阳市;\4307,常德市;4308,张家界市;4309,益阳市;4310,郴州市;4311,永州市;4312,怀化市;4313,娄底市;\4321,株洲市;4322,岳阳地区;4323,益阳市;4325,娄底市;4326,邵阳市;4327,衡阳市;\4328,郴州市;4329,永州市;4330,怀化市;"#将间隔符进行替换newstr_id=str_id.replace(";",",")#通过间隔符对字符进行分割newstr_id=newstr_id.split(",")#创建城市编号和名称空列表cityNo_list=[]cityName_list=[]#通过for循环将字符串截取并添加身份证城市列表for sub_str in newstr_id: if sub_str != "" : #判断子串不为空 if sub_str.isdigit(): #判断子串是否为数值 cityNo_list.append(sub_str) #添加城市编号列表 else: cityName_list.append(sub_str) #添加城市名称列表print("城市编号:",cityNo_list)print("城市名称:",cityName_list)运行结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值