我正在尝试从其他列表生成列表:
lista = [u'http://www.fetise.com/apparel/shirts',
u'http://www.fetise.com/apparel/tees',
u'http://www.fetise.com/apparel/tops-and-tees',
u'http://www.fetise.com/accessories/belts',
u'http://www.fetise.com/accessories/cufflinks',
u'http://www.fetise.com/accessories/jewellery',
u'http://www.fetise.com/accessories/lighters',
u'http://www.fetise.com/accessories/others',
u'http://www.fetise.com/accessories/sunglasses',
u'http://www.fetise.com/accessories/ties-cufflinks',
u'http://www.fetise.com/accessories/wallets',
u'http://www.fetise.com/accessories/watches',
u'http://www.fetise.com/footwear/boots',
u'http://www.fetise.com/footwear/casual',
u'http://www.fetise.com/footwear/flats',
u'http://www.fetise.com/footwear/heels',
u'http://www.fetise.com/footwear/loafers',
u'http://www.fetise.com/footwear/sandals',
u'http://www.fetise.com/footwear/shoes',
u'http://www.fetise.com/footwear/slippers',
u'http://www.fetise.com/footwear/sports',
u'http://www.fetise.com/innerwear/boxers',
u'http://www.fetise.com/innerwear/briefs',
u'http://www.fetise.com/personal-care/deos',
u'http://www.fetise.com/personal-care/haircare',
u'http://www.fetise.com/personal-care/perfumes',
u'http://www.fetise.com/personal-care/personal-care',
u'http://www.fetise.com/personal-care/shavers',
u'apparel/tees/gifts-for-her',
u'footwear/sandals/gifts-for-her',
u'footwear/shoes/gifts-for-her',
u'footwear/heels/gifts-for-her',
u'footwear/flats/gifts-for-her',
u'footwear/ballerinas/gifts-for-her',
u'footwear/loafers/gifts-for-her']
使用这个:
["http://www.fetise.com/" + i for i in lista if "http://www.fetise.com/" not in i]
输出是:
[u'http://www.fetise.com/apparel/tees/gifts-for-her',
u'http://www.fetise.com/footwear/sandals/gifts-for-her',
u'http://www.fetise.com/footwear/shoes/gifts-for-her',
u'http://www.fetise.com/footwear/heels/gifts-for-her',
u'http://www.fetise.com/footwear/flats/gifts-for-her',
u'http://www.fetise.com/footwear/ballerinas/gifts-for-her',
u'http://www.fetise.com/footwear/loafers/gifts-for-her']
但我需要这个输出:
[u'http://www.fetise.com/apparel/shirts',
u'http://www.fetise.com/apparel/tees',
u'http://www.fetise.com/apparel/tops-and-tees',
u'http://www.fetise.com/accessories/belts',
u'http://www.fetise.com/accessories/cufflinks',
u'http://www.fetise.com/accessories/jewellery',
u'http://www.fetise.com/accessories/lighters',
u'http://www.fetise.com/accessories/others',
u'http://www.fetise.com/accessories/sunglasses',
u'http://www.fetise.com/accessories/ties-cufflinks',
u'http://www.fetise.com/accessories/wallets',
u'http://www.fetise.com/accessories/watches',
u'http://www.fetise.com/footwear/boots',
u'http://www.fetise.com/footwear/casual',
u'http://www.fetise.com/footwear/flats',
u'http://www.fetise.com/footwear/heels',
u'http://www.fetise.com/footwear/loafers',
u'http://www.fetise.com/footwear/sandals',
u'http://www.fetise.com/footwear/shoes',
u'http://www.fetise.com/footwear/slippers',
u'http://www.fetise.com/footwear/sports',
u'http://www.fetise.com/innerwear/boxers',
u'http://www.fetise.com/innerwear/briefs',
u'http://www.fetise.com/personal-care/deos',
u'http://www.fetise.com/personal-care/haircare',
u'http://www.fetise.com/personal-care/perfumes',
u'http://www.fetise.com/personal-care/personal-care',
u'http://www.fetise.com/personal-care/shavers',
u'http://www.fetise.com/apparel/tees/gifts-for-her',
u'http://www.fetise.com/footwear/sandals/gifts-for-her',
u'http://www.fetise.com/footwear/shoes/gifts-for-her',
u'http://www.fetise.com/footwear/heels/gifts-for-her',
u'http://www.fetise.com/footwear/flats/gifts-for-her',
u'http://www.fetise.com/footwear/ballerinas/gifts-for-her',
u'http://www.fetise.com/footwear/loafers/gifts-for-her']
有人可以告诉我如何以简明的形式使用if else
for
循环...
答案 0 :(得分:3)
在列表推导的左侧使用条件表达式:
["http://www.fetise.com/" + i if "http://www.fetise.com/" not in i else i for i in lista]
这会产生:
>>> pprint(["http://www.fetise.com/" + i if "http://www.fetise.com/" not in i else i for i in lista])
[u'http://www.fetise.com/apparel/shirts',
u'http://www.fetise.com/apparel/tees',
u'http://www.fetise.com/apparel/tops-and-tees',
u'http://www.fetise.com/accessories/belts',
u'http://www.fetise.com/accessories/cufflinks',
u'http://www.fetise.com/accessories/jewellery',
u'http://www.fetise.com/accessories/lighters',
u'http://www.fetise.com/accessories/others',
u'http://www.fetise.com/accessories/sunglasses',
u'http://www.fetise.com/accessories/ties-cufflinks',
u'http://www.fetise.com/accessories/wallets',
u'http://www.fetise.com/accessories/watches',
u'http://www.fetise.com/footwear/boots',
u'http://www.fetise.com/footwear/casual',
u'http://www.fetise.com/footwear/flats',
u'http://www.fetise.com/footwear/heels',
u'http://www.fetise.com/footwear/loafers',
u'http://www.fetise.com/footwear/sandals',
u'http://www.fetise.com/footwear/shoes',
u'http://www.fetise.com/footwear/slippers',
u'http://www.fetise.com/footwear/sports',
u'http://www.fetise.com/innerwear/boxers',
u'http://www.fetise.com/innerwear/briefs',
u'http://www.fetise.com/personal-care/deos',
u'http://www.fetise.com/personal-care/haircare',
u'http://www.fetise.com/personal-care/perfumes',
u'http://www.fetise.com/personal-care/personal-care',
u'http://www.fetise.com/personal-care/shavers',
u'http://www.fetise.com/apparel/tees/gifts-for-her',
u'http://www.fetise.com/footwear/sandals/gifts-for-her',
u'http://www.fetise.com/footwear/shoes/gifts-for-her',
u'http://www.fetise.com/footwear/heels/gifts-for-her',
u'http://www.fetise.com/footwear/flats/gifts-for-her',
u'http://www.fetise.com/footwear/ballerinas/gifts-for-her',
u'http://www.fetise.com/footwear/loafers/gifts-for-her']
答案 1 :(得分:1)
请勿过滤,您只需为新列表更改值:
["http://www.fetise.com/" + i if "http://www.fetise.com/" not in i else i for i in lista]