【问题标题】:How to add words from a single item in a list如何从列表中的单个项目添加单词
【发布时间】:2019-09-10 20:57:25
【问题描述】:

我正在尝试加入列表中的单词并将其转换为字符串

我尝试过 .join 方法,但由于我的列表中只有一项,所以它不起作用。

我的输入 = list = ['Vehicles, Parts & Accessories,Automotive Body Paint']

所需输出 = str = Vehicles-Parts-&-Accessories-Automotive-Body-Paint

【问题讨论】:

  • 我不确定您是否提供了有效的输入和输出。请仔细检查您的问题,并告知我们提供的数据是否正确。另外,添加您到目前为止尝试过的内容,分享您的代码。
  • 您的示例在列表中有一个项目字符串,因此任务是将您拥有的字符串转换为您想要的字符串。更准确的问题是“如何将字符串中的单词分开然后按字符连接?”
  • 另外,你想用逗号做什么?忽略它们?
  • 如果您在浏览器中搜索“Python split string into words”和“Python join words”,您会发现可以比我们在此处管理的更好地解释这一点的参考资料。

标签: python list join


【解决方案1】:

首先,您的列表只有一项,因此请通过my_str = my_lst[0] 访问它。然后删除, 并将 替换为-

my_str = my_str.replace(',','').replace(' ', '-')

输出:

'Vehicles-Parts-&-AccessoriesAutomotive-Body-Paint'

【讨论】:

    【解决方案2】:

    这可以满足您的需求:

    lst = ['Vehicles, Parts & Accessories,Automotive Body Paint']
    string = lst[0].replace(',',' ').replace(' ','-')
    

    输出:

    'Vehicles--Parts-&-Accessories-Automotive-Body-Paint'
    

    注意:尽量不要使用 strlist 作为变量名,因为 Python 会保留这些变量名供内部使用,您将通过这种方式禁用它们。

    【讨论】:

      【解决方案3】:

      您可以使用正则表达式来执行此操作,让我们找到所有重复的单词字符组或& 并将它们与- 连接起来。解决方案适用于多个字符串的列表。

      import re
      
      l = ['Vehicles, Parts & Accessories,Automotive Body Paint']
      ['-'.join(re.findall('[\w&]+', words)) for words in l]
      

      输出

      ['Vehicles-Parts-&-Accessories-Automotive-Body-Paint']
      

      【讨论】:

        猜你喜欢
        • 2021-10-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-02-21
        • 1970-01-01
        • 1970-01-01
        • 2023-01-09
        • 2014-07-23
        相关资源
        最近更新 更多