【问题标题】:How do I change all strings in the format ' "string" ' or " 'string' " to simply be 'string'?如何将格式“字符串”或“字符串”的所有字符串更改为简单的“字符串”?
【发布时间】:2018-03-30 08:36:36
【问题描述】:

我认为我在访问字典时遇到了键错误,因为字典中的某些键似乎是字符串。有没有办法将这些剥离为简单的字符串?

我正在考虑使用列表推导,但想知道是否有更好的方法:

x = ' "string" '
x = [i for i in x if i not in ["'", '"']]
x = ''.join(x)

现在 x = 'string'

【问题讨论】:

标签: python arrays string list dictionary


【解决方案1】:
x = ' "string" '
x = x.replace('"','\'').replace('\'','\'')
print(x)

输出

'string' 

【讨论】:

  • 可能是因为它返回格式为"'string'" 的字符串我认为op 只是想要字符串前后没有任何引号,但不确定。如果字符串包含合法引号而不是开头和结尾的引号,使用替换也可能会导致问题
【解决方案2】:

strip 可能有用:

x = x.strip('"\' ')

s.strip([chars]) 将删除从给定字符串的开头和结尾传递给函数的任何字符并返回结果

【讨论】:

    【解决方案3】:

    您可以过滤结果:

    print("".join(list(filter(lambda _:_.isalpha(),x))))
    

    输出:

    string
    

    或列表理解:

    print("".join([i for i in x if i.isalpha()]))
    

    输出:

    string
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-24
      • 1970-01-01
      • 1970-01-01
      • 2018-06-07
      • 2019-04-01
      • 2018-02-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多