【发布时间】:2013-07-26 18:10:12
【问题描述】:
使用 Python,我如何/应该将包含数字、后跟其他字符的字符串解析为 int?我要解决的具体问题是从包含一个数字的字符串中解析第一个数字,然后是任意数量的其他字符,包括可能是其他我不感兴趣的数字。
例如,如果字符串是"12//1",我只需要将12 转换为整数。
【问题讨论】:
-
-1;我不介意简单性,也不介意“Pythonic”答案的要求,但我确实介意这个问题。您提供了一个示例字符串,没有用例,也没有关于您希望如何进行解析的详细规则。你的例子没有告诉我们你想要什么数字作为给定的结果,例如字符串
"//12"、" 12//"、"1qwerty2"、"2.9"或"1 2";所有的回答者都只是从一个不清楚的例子中猜到了你想要的行为。 -
@MarkAmery 感谢您的建议。对于我试图解决的实际问题,这是一个合法但简单的问题,我无法在堆栈溢出(或谷歌)上找到答案。对于原始问题中的歧义,我深表歉意,并且我已经对其进行了更新,以澄清和摆脱对“最 Pythonic”的请求,以换取只是询问如何去做,因为那是我真正追求的。随意取消 1 我,或继续提出可能导致您这样做的更改,我很乐意考虑。
-
对于 SO 警察,我再次更新了我的问题,试图使其不那么简洁,包括预期的结果。正如我在之前的评论中提到的,这是一个真实世界的 python 问题,经过几次 google 和 SO 搜索后我无法找到答案(我确定它就在那里,但如果有的话,它很难得到正确的词来得出准确的结果)。无论如何,我最终得到的答案非常有用,而且 SO 已经达到了它的目的,所以如果这就是你的问题,请随时结束我的问题。
-
@djechlin 我也有同样的问题。我的“研究”将我带到了这个页面,它现在是 Google 上的最高结果!
-
@BenRoberts:这个问题是完全合法的,可悲的是它只是不良适度的受害者......这个问题是 IMO 也可能很常见,但不幸的是标准 Python 库显然没有合理地解决。跨度>
标签: python