如何使用For Loop将基础URL与列表中的部分URL拼接
解决URL拼接问题
你的原代码存在几个问题,导致无法正常运行:
- 循环逻辑与变量命名错误:你把循环变量命名为
base,但实际需要遍历URL_list里的子路径,而且拼接顺序应该是基础URL + 子路径,而非反过来 - 变量名不统一:初始化的列表是
full_URL,但代码里误用了未定义的URL变量,且没有将拼接后的结果添加到目标列表中 - 缩进错误:Python循环体必须缩进,你代码中for循环后的语句没有缩进,会触发语法错误
正确的for循环写法
URL_list = ['item-1.html', 'item-2.html', 'item-3.html'] base_url = "http://www.examplesite.com/" full_URL = [] for path in URL_list: # 拼接基础URL和子路径 complete_url = base_url + path # 将拼接结果添加到列表 full_URL.append(complete_url) print(full_URL)
运行后会输出:
['http://www.examplesite.com/item-1.html', 'http://www.examplesite.com/item-2.html', 'http://www.examplesite.com/item-3.html']
更简洁的列表推导式写法
如果想简化代码,可以用Python的列表推导式,一行完成拼接:
URL_list = ['item-1.html', 'item-2.html', 'item-3.html'] base_url = "http://www.examplesite.com/" full_URL = [base_url + path for path in URL_list] print(full_URL)
效果和上面的for循环完全一致。
内容的提问来源于stack exchange,提问作者user20010955
相关产品推荐
相关产品推荐

