【python】切分元素(列表中的数据切分对应元素)

问题描述:

凭据为:F类-117-A的格式,需要把117的编号取出


解决方案:

因为是列表数据,所以要跑循环。而且‘117’编号数据的长度是等于3的,所以我们可以长度3来做函数。

import pandas as pd
keyword_1 = pd.read_excel(r'C:\Users\54512\Desktop\从数据中切取对应元素.xlsx',sheet_name='Sheet1',converters={'文件名': str})
keyword_2 = keyword_1['凭据'].values.tolist()
c = []
for q in keyword_2:
    if '-' in q:
#d=列表,# 按 - 切分
        d = q.split('-') 
#q2=其中一个元素,d目前有三个元素
        for q2 in d:
#如果q2元素长度==11
            if len(q2) == 3:
#添加那个元素到c列表中
                c.append(q2)
    else:
        c.append(q)
keyword_1['编号2(python导出)'] = c
keyword_1.to_excel(r'C:\Users\54512\Desktop\从数据中切取对应元素结果.xlsx',index=False)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是用Python将地址按照省市区三级切分的示例代码: ```python import pypinyin def split_address(address): # 获取省份和直辖市的列表 provinces = ['北京市', '天津市', '上海市', '重庆市'] # 加载城市名称和编码的映射表 city_codes = { '北京市': '110000', '天津市': '120000', '上海市': '310000', '重庆市': '500000', # 其他省市的映射表可自行添加 } # 加载区县名称和编码的映射表 district_codes = { # 省市区县的映射表可自行添加 } # 将地址转换为拼音,并去除空格和特殊字符 address_pinyin = pypinyin.lazy_pinyin(address, style=pypinyin.NORMAL, errors='ignore') address_pinyin = ''.join(filter(str.isalnum, address_pinyin)) # 判断地址是否包含省份或直辖市名称 province = '' for p in provinces: if p in address: province = p break # 判断地址是否包含城市名称 if province: address_pinyin = address_pinyin.replace(province, '') city = '' for c in city_codes: if c in address_pinyin: city = c break if city: address_pinyin = address_pinyin.replace(city, '') else: city = '' for c in city_codes: if c in address_pinyin: city = c break if city: address_pinyin = address_pinyin.replace(city, '') province = city[:-1] # 判断地址是否包含区县名称 district = '' for d in district_codes: if d in address_pinyin: district = d break if district: address_pinyin = address_pinyin.replace(district, '') # 根据省份、城市和区县名称获取对应的编码 province_code = city_codes.get(province, '') city_code = city_codes.get(city, '') district_code = district_codes.get(district, '') # 返回省份、城市和区县的名称和编码 return { 'province': province, 'province_code': province_code, 'city': city, 'city_code': city_code, 'district': district, 'district_code': district_code } ``` 需要注意的是,这只是一个基本的地址切分方法,实际情况还需要根据具体的地址库和需求进行修改和调整。代码使用了pypinyin库将文地址转换为拼音,需要先安装该库。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值