《乡村爱情15》电视剧-在线热播-星辰电影
不知道是不是和舅舅好好交流过了,感染了学霸的气质,身上已经完全看不住小学生的感觉了。
2025年01月06日,用Python整理你的通讯录2019-12-08 22:31·宁哥看遂州对于python如何提高我们的生产力,有些人可能到现在还是一头雾水,这里有一个误区是“python语言要掌握的非常好才能写有用的程序”其实不一定,我见过很多刚接触编程的人,掌握了基本的东西就开始按照自己的想法写程序用来帮助自己提高生产效率了。更多的时候我们应该发挥自己的想法力去利用手上现有的技术和工具组合起来产生最大的价值。而不是把一门语言学透了才敢说写程序,就跟大家读书的时候早恋一样。老师那会家长说你们这个年纪不懂爱情,不要太早陷进去,结果大家也并没听嘛,还是爱得死去活来乐此不疲的,也没说先去书店买本《如何谈爱恋》的书读透了再开始。说到底还是动力不足,而我们平时写程序也要考虑一个投入产出比的问题,花最小的代价写程序,去为自己产生更大的价值。今天我来写一段很少的python代码,用来整理我的联系人信息,简单点说就是我的通讯录里原本只有 联系人姓名,手机号这两个信息,那么我想对每个人做一个信息查询和分类,我希望知道对方是男是女,是哪个地方的人,生成一个excel表格出来。其实我也可以一个一个手动来分析,但是这样效率太低,如果遇到有几百个上千上万个联系人时,这个工作将变得几乎不可能完成。现在打开我的google通讯录,开始导出数据,这里我选择了导出格式为CSV的,便于一会处理数据方便。下载之后我有了一个名为contacts.csv的文件,对于csv文件,其实格式很简单,通常采用 逗号分隔 , 用来组合数据,下面我写一个简单的csv文件的范例文件名:西游记人物属性表.csv文件内容:姓名,年龄,性别monkey sun, 800, 女pig man, 1200, 男monks sha, 1000, 男master tang,999, 男然后我们可以用任意文本编辑器打开这个文件,看起来像下面这样现在,我们换个工具打开它,比如excel,看看会有什么效果,我在macOS上,所以用的是numbers,不过效果是差不多的。现在说回我刚才导出的联系人文件 contacts.csv,因为google导出的数据没用的字段太多,我只想关心人名和电话,所以在这里把表格简单的处理了一下,First Name,Middle Name ,LastName也是老外的习惯,不管它,反正我们把这三个字段的数据拼在一起即可。好了可以开始写代码了,最初的版本长成下面这样# 导入csv处理模块import csv# 导入网络请求模块import requests# 导入性别猜测模块import ngender#定义性别字段中英文映射表gender_map = { 'male':'男', 'female': '女'}# 定义输出表头headers = ['姓名', '性别', '电话', '省份', '城市']# 定义电话归属地查询api地址url = 'http://mobsec-dianhua./dianhua_api/open/location?tel={}'# 打开csvwith open('contacts.csv') as f: # 用字典的方式读取数据 f_csv = csv.DictReader(f) # 循环读取每一行数据 for row in f_csv: # 获取三个字段的名字并进行拼接 first_name = row['First Name'] middle_name = row['Middle Name'] last_name = row['Last Name'] name = f"{last_name}{middle_name}{first_name}" # 处理电话号码格式(过滤+86,座机号等等内容不做处理) tel = row['Mobile Phone'] tel = tel if len(tel) == 11 else '' # 判断联系人如果电话号码存在 if tel: # 根据联系人姓名获取性别 ret = ngender.guess(name) people_gender = gender_map.get(ret[0]) # 获取电话归属地 resp = requests.get(url=url.format(tel)).json() if resp['responseHeader']['status'] == 200: detail = resp['response'][tel]['detail'] province = detail['province'] city = detail['area'][0]['city'] # 打印姓名性别等信息 print(f'姓名:{name}\n性别:{people_gender}\n电话:{tel}\n省份:{province}\n城市:{city}\n') # 暂停,只显示一条用于教学演示 break嗯,显示效果如下,我们成功的查出了数据。接下来我想把这些数据变成表格,需要再加几行代码处理下,生成一个csv文件出来,代码如下:# 导入csv处理模块import csv# 导入网络请求模块import requests# 导入性别猜测模块import ngender#定义性别字段中英文映射表gender_map = { 'male':'男', 'female': '女'}# 定义输出表头headers = ['姓名', '性别', '电话', '省份', '城市']# 定义电话归属地查询api地址url = 'http://mobsec-dianhua./dianhua_api/open/location?tel={}'# 打开csvwith open('contacts.csv') as f: # 用字典的方式读取数据 f_csv = csv.DictReader(f) # 循环读取每一行数据 for row in f_csv: # 获取三个字段的名字并进行拼接 first_name = row['First Name'] middle_name = row['Middle Name'] last_name = row['Last Name'] name = f"{last_name}{middle_name}{first_name}" # 处理电话号码格式(过滤+86,座机号等等内容不做处理) tel = row['Mobile Phone'] tel = tel if len(tel) == 11 else '' # 判断联系人如果电话号码存在 if tel: # 根据联系人姓名获取性别 ret = ngender.guess(name) people_gender = gender_map.get(ret[0]) # 获取电话归属地 resp = requests.get(url=url.format(tel)).json() if resp['responseHeader']['status'] == 200: detail = resp['response'][tel]['detail'] province = detail['province'] city = detail['area'][0]['city'] # 打印姓名性别等信息 print(f'姓名:{name}\n性别:{people_gender}\n电话:{tel}\n省份:{province}\n城市:{city}\n') # 暂停,只显示一条用于教学演示 break效果如下:整段程序没有做任何优化,连注释信息60行,但是它可以产生很大的用途,因为哪怕是我的联系人有非常多,我也可以用它在很快的时间做完这些信息整理工作,费力的是计算机,不是我,我坐在一旁喝咖啡即可。在这之后,我们可以就这个例子继续扩充,对联系人进行分组,展示图表之类的,希望大家有所启发。用到的第三方python库 requests, ngender可以通过pip安装pip install requests, ngender
《乡村爱情15》电视剧-在线热播-星辰电影
在发展数实融合创新应用和模式方面黄晁建议政府部门应适度超前布局数字基础设施建设加快5骋的商用部署和规模应用加快超算中心的基础设施边缘应用为数实深度融合打造良好的软硬件环境
他迈着沉重的步伐走到父亲的病房门口时,他则迅速将自己的悲伤埋藏心底,面带微笑走到父亲的病床前,看到父亲苍白的脸平静的看着他,好似提前知道了结果一样,而这份平静使得陈亮忍不住哭了起来但父亲却安慰他没事的只是小病而已。狈叠础历史上突然消失的10大球星