Python 将数据源⾥的快递信息进⾏分拣

Python 将数据源⾥的快递信息进⾏分拣


一、实例题目

将数据源⾥的快递信息进⾏分拣,最终⽣成的数据格式如下:

{
 	"北京市":[
	 ['王*⻰', '北京市海淀区苏州街⼤恒科技⼤厦南座4层'],
 	['庞*⻜', '北京市昌平区汇德商厦四楼403'],
	 ....
 	],
 	"⼭东省":[
 	['孙*云', '⼭东省济南市⼭东省济南市历下区祥泰汇东国际,⼀号楼3005室'],
 	['鞠*⻰', '⼭东省潍坊市⽟清街江⼭帝景B区12号楼⼀单元14楼'],
 	['张*', '⼭东省济南市兴港路三庆城市主⼈']
}

关于数据源

我相信你们都有的
表情包

好吧,没有的话我把资源上传到CSDN上了,需要的话可以自行下载
作业练习-快递信息源 TXT


二、 基本的过滤(核心)

这里放的是最基本的过滤函数,如果你懒,这里就已经做完了
结尾处 print 一下即可

	def filter():
		filter_city = {}	# 存放过滤后的数据
		others = [ "宁夏", "新疆", "西藏", "澳门", "香港", "广西"]  # 将两个字的省份处理
		for item in data:
			province = item[1][:2] if item[1][:2] in others else item[1][:3]
			# 如果前两个字在 others 列表里 前两个定义为省份名,其余的为三个字定义
			if province not in filter_city:  	
			# 判断是否有新建省份的key 在filter_city 字典里,没就新建一个列表
				filter_city[province] = [item]
			else:
				filter_city[province].append(item)	# 将内容添加进列表)
		return filter_city

懒人的话结尾处print一下就完成了,此文章结束

print(filter())

三、进行统计

将过滤好后的数据进行一个各省市 人数的一个统计

	def count():	# 统计过滤后的数据
		count = {}
		for i in filter():
			count[i]=len(filter()[i])
		return count

四、格式化打印

数据结构,本身并不存在什么换行,只能是通过输出语句进行操作

只是为了好看

	def output():	# 格式化打印 只是为了好看。。
		for province in filter():
			print(province, ":")
			for address in filter()[province]:
				print(address)
			print()
		print(f"{'统计':=^48}")
		for stat in count():
			print(f"{stat}: 共计{count()[stat]}")

	output()
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值