Python100个库分享第23个—jionlp收发件地址拆分(自动补全):省、市、区\县—包括自治区 (办公篇)

目录

专栏导读

🌸 欢迎来到Python办公自动化专栏---Python处理办公问题,解放您的双手

🏳️‍🌈 博客主页:请点击------> 一晌小贪欢的博客主页求关注

👍 该系列文章专栏:请点击------>Python办公自动化专栏求订阅

🕷 此外还有爬虫专栏:请点击------>Python爬虫基础专栏求订阅

📕 此外还有python基础专栏:请点击------>Python基础学习专栏求订阅

文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏

❤️ 欢迎各位佬关注! ❤️

库的介绍

将完整的地址中提取出省、市、县三级地名,或者乡镇、村、社区两级详细地名,你可以使用jionlp实现快速解析。在使用之前,你需要先安装这个库。

库的安装

地址拆分库------jionlp

python 复制代码
pip install jionlp -i https://pypi.tuna.tsinghua.edu.cn/simple/

读取Excel库------openpyxl

python 复制代码
pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple/

写入Excel库------xlsxwriter

python 复制代码
pip install xlsxwriter -i https://pypi.tuna.tsinghua.edu.cn/simple/

数据准备

目录结构

完整代码

python 复制代码
# -*- coding: UTF-8 -*-
'''
@Project :地址省市区分离
@File    :main.py
@IDE     :PyCharm 
@Author  :一晌小贪欢(278865463@qq.COM)
@Date    :2024/4/19 10:13 
'''

import os
import openpyxl
import xlsxwriter
import jionlp

for f in os.listdir("./数据源/"):
    # 打开 Excel 文件,获取 Workbook 对象
    workbook = openpyxl.load_workbook('./数据源/' + os.listdir('./数据源/')[0], read_only=True)
    # 选择需要读取数据的 Sheet,获取 Worksheet 对象
    worksheet = workbook.active

    workbook_w = xlsxwriter.Workbook(f'./结果/拆分结果-{f}')
    worksheet_w = workbook_w.add_worksheet()

    # 循环遍历每一行,将每一行的数据以列表形式添加到 rows 列表中
    for i, row in enumerate(worksheet.iter_rows(values_only=True), 1):
        d = list(row)
        if i == 1:
            worksheet_w.write_row(i - 1, 0, d)
            continue
        raw_addres = jionlp.parse_location(d[0])
        sheng = raw_addres['province']
        shi = raw_addres['city']
        qu_xian = raw_addres['county']
        print(f'省:{sheng} 市:{shi} 区\县:{qu_xian}')
        worksheet_w.write_row(i - 1, 0, [d[0], sheng, shi, qu_xian])
        # print(f"行{i}",d)
    workbook_w.close()

总结

希望对初学者有帮助

致力于办公自动化的小小程序员一枚

希望能得到大家的【一个免费关注】!感谢

求个 🤞 关注 🤞

此外还有办公自动化专栏,欢迎大家订阅:Python办公自动化专栏

求个 ❤️ 喜欢 ❤️

此外还有爬虫专栏,欢迎大家订阅:Python爬虫基础专栏

求个 👍 收藏 👍

此外还有Python基础专栏,欢迎大家订阅:Python基础学习专栏

相关推荐
wjs20246 小时前
C++ 基本语法
开发语言
天才测试猿6 小时前
Selenium定位元素的方法css和xpath的区别
css·自动化测试·软件测试·python·selenium·测试工具·测试用例
云烟成雨TD6 小时前
NumPy 2.x 完全指南【四十二】线性代数之向量运算
python·机器学习·numpy
m0_738120726 小时前
网络安全编程——开发一个TCP代理Python实现
python·tcp/ip·安全·web安全·网络安全
金色熊族7 小时前
装饰器模式(c++版)
开发语言·c++·设计模式·装饰器模式
七夜zippoe7 小时前
仓颉语言核心特性深度解析——现代编程范式的集大成者
开发语言·后端·鸿蒙·鸿蒙系统·仓颉
四谎真好看7 小时前
Java 黑马程序员学习笔记(进阶篇21)
java·开发语言·笔记·学习·学习笔记
初见无风7 小时前
2.7 Lua代码中的可变参数
开发语言·lua·lua5.4
七月稻草人7 小时前
Rust 应用状态(App State)管理:类型安全与并发控制的艺术
开发语言·安全·rust