【问题标题】:Python3: Change one character of item in listPython3:更改列表中项目的一个字符
【发布时间】:2018-04-18 10:45:13
【问题描述】:

我有一个这样的列表:

['ID|number1|number2|+|name|location','ID2|number3|number4|-|name2|location2']

列表由字典生成,包含字典的键。一世 想更改第一个'|'变成一个'='。

我试过了:

keyList=[]
for item in finalDict.keys():
    keyList.append(item)

z=0
for item in keyList:
    for letter in item:
        if letter=='|':
            z+=1
            if z==1:
                letter.replace('|', '=')

但我没有收到错误或我想要的输出

Actual output:
    ['ID|number1|number2|+|name|location','ID2|number3|number4|-|name2|location2']


Desired output:
    ['ID=number1|number2|+|name|location','ID2=number3|number4|-|name2|location2']

【问题讨论】:

    标签: python python-3.x list replace


    【解决方案1】:

    使用列表理解+正则表达式

    import re 
    theList=['ID|number1|number2|+|name|location','ID2|number3|number4|-|name2|location2']
    
    print [ re.sub(r'(ID.?)\|',r'\1=',item) for item in theList]
    

    【讨论】:

      【解决方案2】:

      改变第一个'|'变成'='

      简单来说:

      keyList = ['ID|number1|number2|+|name|location','ID2|number3|number4|-|name2|location2']
      result = [k.replace('|', '=', 1) for k in keyList]
      
      print(result)
      

      输出:

      ['ID=number1|number2|+|name|location', 'ID2=number3|number4|-|name2|location2']
      

      • str.replace(old, new[, count]) - 如果可选参数 count 是 给定,仅替换第一次出现的计数。

      【讨论】:

      • 现在,我什至记得读过这篇文章。 str.replace 的文档,但我只是跳过了 count 选项。感谢大家的帮助和时间!
      【解决方案3】:
      l=['ID|number1|number2|+|name|location','ID2|number3|number4|-|name2|location2']
      
      j=[]
      for i in l:
          i=i.replace("|","=",1)
          j.append(i)
      
      print(j)
      

      输出

      ['ID=number1|number2|+|name|location', 'ID2=number3|number4|-|name2|location2']
      

      【讨论】:

      • 谢谢你,我错过了,我可以指定位置,在哪里替换!这简化了我的程序并减少了我的循环:)
      猜你喜欢
      • 2023-03-16
      • 2015-04-20
      • 1970-01-01
      • 2013-02-25
      • 1970-01-01
      • 2014-05-10
      • 1970-01-01
      • 2015-09-11
      • 1970-01-01
      相关资源
      最近更新 更多