如何在python字符串中循环多行并转换为整数:

2024-10-01 17:35:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试循环使用以下代码:

data = "456432 jfhjsdfjs fhdjsjk 990 fdjsf" 345903 fdsfdfs fsfdsfd 667 fsdfd 456432 sfdsfds fdsfdsfd 778 fdsfds"

我想转换每行第一个数字系列的数字,这样它就会返回以下内容(转换成整数)

以下是我目前掌握的代码,对所有内容进行排序:

print [int(data.split()[0])]

我猜我将不得不循环遍历每一行,同时仍然拉动每行列表的0项。虽然我不确定我是否有最好的工作流程。在


Tags: 代码内容data排序数字整数fdsfdssfdsfds
3条回答

您必须逐行迭代,然后执行split()[0]以获得第一个值:

[int(line.split()[0]) for line in data.splitlines()]

另一个简短的解决方案是通过使用带有re.MULTILINE标志的re.findall函数(from re模块)来获得每行开头的数字:

import re

# your 'data' with text

print(re.findall(r'^\d+\b', data, flags=re.MULTILINE))

输出:

^{pr2}$
y = [int(x) for x in data.split() if x.isdigit() and int(x) > 99999]
y.sort()

将返回该字符串中所有数字的列表,作为由6位数字组成的整数

编辑:不返回,而是指定y,然后排序=D 实际上,y是字符串中所有整数的列表,它由6位数字组成

相关问题 更多 >

    热门问题