海贼王漫画 - 风之动漫
在1986年,年仅18岁的毛宁就被特聘为辽宁体育运动技术学院教师,父母对此也颇为满意,认为毛宁寻得了一份体面而稳定的好工作。
2024年12月31日,风力涡轮机是风力发电的基础,该装置将风能转化为机械能,使用寿命在20-25年左右。风力涡轮机高效、安全的运行,对风力发电有着至关重要的作用。
海贼王漫画 - 风之动漫
用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 NameMiddle 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
王阿姨松了一口气,“谢谢你,律师。那我该怎么做呢?”2024-07-08 11:52·钱江晚报