Python-如何将字符串添加到列表项并返回修改后的列表项

时间:2018-09-13 06:26:55

标签: python-3.x

我的代码块应该遍历列表,找到满足以“ /”开头的条件的项目,然后修改该特定列表项目。

paths = ["/home.html", "index.html", "/file.html"]

for i in paths:
   if i.startswith("/"):
     i == ("https://www.me.com", i)
   else:
     pass

print(paths)

或者您可以在这里看到:a link

感谢您的帮助。预先感谢。

3 个答案:

答案 0 :(得分:0)

您正在打印与定义的变量相同的变量。遍历列表不会更改该列表元素。

此代码将为您提供帮助:

paths = ["/home.html", "index.html", "/file.html"]
new_paths = []
for i in paths:
   if i.startswith("/"):
     i = "https://www.me.com" + str(i)
     new_paths.append(i)
   else:
     pass

print(new_paths)

答案 1 :(得分:0)

执行此操作的一种方法是遍历元素的数量,而不是元素本身。这为您提供了一种在循环过程中更改元素的方法

paths = ["/home.html", "index.html", "/file.html"]
for i in range(len(paths)):
     if (paths[i].startswith("/")):
         paths[i] = "https://www.me.com" + paths[i]

答案 2 :(得分:0)

您可以使用error CS0246: The type or namespace name 'AsyncLocal<>' could not be found (are you missing a using directive or an assembly reference?) 来获取列表元素的当前位置并对其进行修改。请注意,您不需要else条件。

enumerate

这将在我的机器上打印

paths = ["/home.html", "index.html", "/file.html"]

for idx, val in enumerate(paths):
    if val.startswith("/"):
      paths[idx] = "https://www.me.com" + str(val)

print(paths)