提取出如下列表中的二手方面积(不含“平方米”字样)和建筑年代,并将提取的信息存储到sizes变量和years变量内

**

提取出如下列表中的二手方面积(不含“平方米”字样)和建筑年代,并将提取的信息存储到sizes变量和years变量内

**

ls=[‘1室1厅 | 44.39平方米 | 南 | 简装 - 高楼层(共6层) | 1996年建’,‘1室0厅 | 29.39平方米 | 北 - 精装修 | 低楼层(共5层) | 1957年建’,
‘2室1厅 | 56.65平方米 | 南 | 简装 - 高楼层(共6层) | 1995年建’,‘3室2厅 | 118.41平方米 | 南 - 精装修 | 低楼层(共39层)’]

// 定义sizes与years列表
sizes=[]
years=[]
#导入re模块
import re

这里可以使用for循环,使用re模块将内容分开

# for循环代码
for i in range(len(ls)):
	 #将每一部分内容分开
     s=re.split('[-\|\n]',ls[i])
     s_strip=[j.strip() for j in s]
     size=re.findall(r'\d+\.?\d*',s_strip[1])[0]#使用findall()得到的是一个列表,这里取第一个元素
     sizes.append(size)#将得到的数字放入先前定义列表中
     if len(s_strip)==6:#判断列表长度,否则会出现越界,如果长度为5代表这个二手房没有年份
          year=re.findall(r'\d+',s_strip[5])[0]
          years.append(year)

接下来就可以直接打印sizes与years列表了

#打印列表
print(sizes)
print(years)

完整代码如下:

import re

sizes=[]
years=[]

ls=['1室1厅 | 44.39平方米 | 南 | 简装 - 高楼层(共6层) | 1996年建','1室0厅 | 29.39平方米 | 北 - 精装修 | 低楼层(共5层) | 1957年建',
     '2室1厅 | 56.65平方米 | 南 | 简装 - 高楼层(共6层) | 1995年建','3室2厅 | 118.41平方米 | 南 - 精装修 | 低楼层(共39层)']

for i in range(len(ls)):
     s=re.split('[-\|\n]',ls[i])
     s_strip=[j.strip() for j in s]
     size=re.findall(r'\d+\.?\d*',s_strip[1])[0]
     sizes.append(size)
     if len(s_strip)==6:
          year=re.findall(r'\d+',s_strip[5])[0]
          years.append(year)

print(sizes)
print(years)

附:结果在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值