目前,我有3个列表,每个列表中包含大约20个元素:
area addressbuildingname
离。 ' midtown parkst100stockton'
离。 '市中心'
离。 '斯托克顿'
有没有办法比较这些列表并从第一个列表中删除区域和建筑物名称,这样我就可以收集地址并将其添加到第4个列表
离。 ' parkst100'
由于
答案 0 :(得分:1)
假设我们有3个列表:
a = ['midtown parkst100stockton', 'uptown square200lenton']
b = ['midtown', 'uptown']
c = ['stockton', 'qwerty']
您可以使用以下代码:
d = []
for i,j,k in zip(a,b,c):
if i.startswith(j) and i.endswith(k):
d.append(i.lstrip(j).rstrip(k))
如果来自a
列表的字符串以b
列表中的相应字符串开头,并以c
列表中的字符串
答案 1 :(得分:0)
我希望这会对你有所帮助。
address = ['midtown parkst100stockton']
area = ['midtown']
building = ['stockton']
mylst = map(lambda each:each.strip(area[0]), address)[0].strip(building[0])
print mylst
输出:parkst100