【问题标题】:Remove whitespace between strings in a list using Python使用 Python 删除列表中字符串之间的空格
【发布时间】:2016-11-12 07:29:46
【问题描述】:

我有一个要排序的整数字符串列表。格式是这样的:

l= ['17', '23', '35', '79', .....]

我需要将每个数字字符串转换为整数,以便对它们的数值进行排序。我尝试了以下方法,

l.sort(key=int)

但是,我得到了

以 10 为底的 int() 的无效文字:' '

我认为这是由于字符串之间的空白。那是对的吗?如果是这样,我该如何解决?

【问题讨论】:

  • 您能否提供一个导致此问题的示例输入?
  • 奇怪,我试试你的代码,它确实有效,空间应该不是问题,检查你的输入列表是否包含非数字或空的东西

标签: python string list sorting


【解决方案1】:

从列表中删除空白字符串:

l = filter(str.strip, l)

然后你就可以按原样排序了。

【讨论】:

  • @cdarke:直接解决了OP的问题。我想你只是还没想过怎么做。
  • @cdarke 不是......空白字符串引发了 OP 的异常,而这个答案过滤掉了这些......
  • 但是,如果您要使用过滤器@John,我会避免使用 lambda 并直接使用 str.strip。
  • @LijieZhou:太好了。请注意,如果答案解决了您的问题,您可以点击左侧的复选标记“接受”。
猜你喜欢
  • 2023-01-31
  • 2017-08-24
  • 1970-01-01
  • 2021-11-16
  • 2013-09-23
  • 2011-02-05
  • 2021-05-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多