【问题标题】:How to remove a chracter in a list of strings -Python如何删除字符串列表中的字符-Python
【发布时间】:2020-11-12 09:33:09
【问题描述】:

????我有一个链接列表,我需要将其用于另一个程序,但是问题????是他们在开头有一个数字和一个括号,比如:

  1. https://instagram.com/p/link1
  2. https://instagram.com/p/link2 ..

首先,我使用以下代码将它们转换为列表:

links = []
n = int(input("How many links u got:"))
for j in range(1, n+1):
    v = str(input())
    links.append(v)

输出是: ['1) https://instagram.com/p/link1','2) https://instagram.com/p/link2']

现在我需要删除数字和括号。

有什么建议吗?

【问题讨论】:

    标签: python string list hyperlink python-3.7


    【解决方案1】:

    试试这个:

    for x, link in enumerate(links):
        links[x] = link.split(") ")[1]
    

    这将从项目中删除起始 "1) ""2) "

    【讨论】:

      【解决方案2】:

      您的代码没有添加"1) ",所以我假设它是不会改变的用户输入的一部分?

      如果是用户生成的内容,您可能需要考虑在尝试删除之前检查 ) 是否存在。

      我对您的代码进行了最低限度的修改,以便它在 ) 上拆分(如果它存在于用户输入中),并且我添加了删除前导空格以解决 "1)http://..." 的情况。

      如果不了解更多有关问题的信息,很难为您提供更多指导,但我假设) 也不会出现在链接本身中。

      links = []
      n = int(input("How many links u got:"))
      for j in range(1, n+1):
          v = str(input())
          v = v.rsplit(')')[1] if ')' in v else v
          links.append(v.lstrip(' '))
      

      【讨论】:

        【解决方案3】:

        列表的元素中有一个模式。如果我理解正确,您只需要在字符串中包含空格之后的部分。您可以将最后一行更改为:

        links.append(v.split(' ')[1])
        

        在此行中,您将使用空格分隔行,并使用字符串的第二部分。更多信息look here

        【讨论】:

        • Uzun Emre.. 谢谢
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-02-12
        • 1970-01-01
        • 2022-01-06
        • 2012-04-18
        • 1970-01-01
        相关资源
        最近更新 更多