本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills

  这是我的系列文章「Python实用秘技」的第8期,本系列立足于笔者日常工作中使用Python积累的心得体会,每一期为大家带来一个几分钟内就可学会的简单小技巧。

  作为系列第8期,我们即将学习的是:一行代码解析地址信息

  在日常数据处理的过程中,有时候拿到手的是完整的地址信息,如果需要从地址信息中解析出相应的各级行政单元名称,方式有很多,而今天要介绍的方式只需要一行代码即可快速实现。

  首先我们需要安装jionlp这个非常好用的文本预处理工具包,建议使用国内镜像安装:

pip install jionlp -i https://pypi.douban.com/simple/

  安装完成后,只需要使用其parse_location()接口即可进行地址信息的解析,且具有多种不同的功能:

  • 基础的省市区信息提取

  • 街镇乡、村或居委会信息提取

  通过设置参数town_village=True,还可以额外尝试提取出街镇乡、村或居委会信息等级别的信息字段:

  • 自动补全省市信息

  若地址信息中缺失省市信息也无妨,在不存在歧义的情况下,parse_location()会自动关联并补全相关信息:

  除此之外,parse_location()还具有旧地名修正为新地名、自定义行政区划词典等功能,你可以在其官方文档https://github.com/dongrixinyu/JioNLP/wiki/Gadget-说明文档#地址解析中了解更多。


  本期分享结束,咱们下回见~

「Python实用秘技08」一行代码解析地址信息的更多相关文章

  1. 「Python实用秘技06」逐行监听Python程序的内存消耗

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第6期 ...

  2. 「Python实用秘技01」复杂zip文件的解压

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的新系列文章「Python实用秘技」的第1 ...

  3. 「Python实用秘技02」给Python函数定“闹钟”

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第2期 ...

  4. 「Python实用秘技03」导出项目的极简环境依赖

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第3期 ...

  5. 「Python实用秘技04」为pdf文件批量添加文字水印

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第4期 ...

  6. 「Python实用秘技05」在Python中妙用短路机制

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第5期 ...

  7. 「Python实用秘技07」pandas中鲜为人知的隐藏排序技巧

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第7期 ...

  8. 「Python实用秘技09」更好用的函数运算缓存

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第9期 ...

  9. 「Python实用秘技10」深度比较Python对象间差异

    本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章「Python实用秘技」的第10 ...

随机推荐

  1. yarn上运行flink环境搭建

    主要完成hadoop集群搭建和yarn上运行flink 1.搭建hadoop伪集群 主要是搭建hadoop MapReduce(yarn)和HDFS 1.1 下载&配置环境变量 这里下载的ha ...

  2. MariaDB CAST语法

    Syntax CAST(expr AS type) Description CAST()函数采用一种类型的值,并产生另一种类型的值,类似于CONVERT函数. CAST()和CONVERT()之间的主 ...

  3. java-关于getResourceAsStream

    1111class.getClassLoader().getResourceAsStream InputStream ips = testResource.class.getClassLoader() ...

  4. @RequestMapping 注解有什么用?

    @RequestMapping 注解用于将特定 HTTP 请求方法映射到将处理相应请求的 控制器中的特定类/方法.此注释可应用于两个级别: 类级别:映射请求的 URL 方法级别:映射 URL 以及 H ...

  5. s函数中积分程序更改

    function [sys,x0,str,ts,simStateCompliance] = int_hyo(t,x,u,flag) switch flag, case 0, [sys,x0,str,t ...

  6. sticker-footer 布局

    sticker-footer 1.嵌套层级不深,可直接继承自 body width:100%: height:100%; // html <body> <div id="s ...

  7. 讲清楚之 javascript中的this

    讲清楚之 javascript中的this 这一节来探讨this. 在 javascript 中 this 也是一个神的存在,相对于 java 等语言在编译阶段确定,而在 javascript 中, ...

  8. oracle执行sql查询语句出现错误ORA-00942:表或视图不存在

    情况是这样,A库的用户名和表空间分别为SH , SH 把业务表SH所有数据从A库,导入到B库, 表空间为SH,用户名为SP 在B库里面执行sql查询语句出现错误ORA-00942:表或视图不存在 语句 ...

  9. Hyperledger Fabric节点的动态添加和删除

    前言 在Hyperledger Fabric组织的动态添加和删除中,我们已经完成了在运行着的网络中动态添加和删除组织.本文将在其基础上,详细介绍了如何在 soft 组织上添加新的 peer2 节点,并 ...

  10. JavaWeb项目端口占用问题

    今天使用springboot编写项目的时候安装了一个插件,重启了idea,但是项目忘记终止连接了,再打开idea启动项目发现端口被占用 控制台输出: ************************* ...