python-如何将由空格分隔的数字字符串拆分为整数?
我有一个字符串"42 0"(例如),需要获取两个整数的数组。 我可以在空间上做.split吗?
10个解决方案
95 votes
对于OP可以通过解释器进行测试很容易回答自己的问题,六个答案还远远不够:
>>> "42 0".split() # or .split(" ")
['42', '0']
答:可以。
但是,没有特别指出,默认情况下,如果您不向其提供参数,则map方法会在空格(空格,制表符,回车符和换行符)上分割。
>>> " \r 42\n\r \t\n \r0\n\r\n".split()
['42', '0']
另外,当您要将可迭代项转换为诸如list()、27578313699455150150、str之类的内置项时,使用map看上去通常比使用列表理解更简洁。在Python 2中:
>>> map(int, "42 0".split())
[42, 0]
在Python 3中,map将返回一个惰性对象,您可以将其放入具有list()的列表中,或者按原样在for循环中使用:
>>> map(int, "42 0".split())
>>> list(map(int, "42 0".split()))
[42, 0]