从链接列表中删除尾随/

时间:2018-06-14 13:56:28

标签: python python-3.x trailing-slash trailing

我有一个网址列表,我正在尝试从列表中的所有网址中删除尾随的“/”。我已经尝试了所有这些变体而没有错误消息,但没有删除/:

for link in url_list:
   if link.endswith('/'):
      url_list.append(link[:-1])

for link in url_list:
    if link.endswith('/'):
       link = link[:-1]

for link in url_list:
    link = link[:-1] if link.endswith('/') else link

运行这些代码后我print(url_list)并且没有任何变化。

1 个答案:

答案 0 :(得分:2)

你首先for-loop几乎可以工作,虽然它会将新形成的网址附加到现有网址而不是替换。

更好的方法是创建一个包含列表理解的新列表,并使用str.rstrip删除尾随/

代码

url_list = ['googoo.com/foo/', 'wikipidoo.org/bar/', 'stachoverflaw.com/baz']

stripped_urls = [url.rstrip('/') for url in url_list]

print(stripped_urls)

输出

['googoo.com/foo', 'wikipidoo.org/bar', 'stachoverflaw.com/baz']