提取行中的数字并将它们存储在 Python 中列出
Extracting digits in line and storing them to list in Python
我有一个生成字符串“Created Form XX”的文本文件,其中 XX 是一个整数。我只想提取整数并将其保存到列表中,以便稍后在我的 python 程序中使用。
下面是我到目前为止能够执行但无法显示数字的代码
import re
with open("filename.txt") as f:
for line in f:
if "form" in line:
re.findall('\d+', line)
如何打印最后一行代码的输出并分配给列表?
re.findall
returns 匹配值列表(在您的例子中是匹配的数字列表)。您应该将列表分配回一个变量(以便您以后可以使用它)-
nums = re.findall('\d+', line)
如果你想打印这个列表,你可以简单地做 -
print(nums)
如果您想在单独的行中打印每个匹配的元素,您可以使用 for
循环或 str.join()
-
for i in nums:
print(i)
您可以在顶部保留一个列表,其中存储您找到该文件的所有编号,并使用 nums
列表扩展该列表。例子-
import re
numslist = []
with open("filename.txt") as f:
for line in f:
if "form" in line:
nums = re.findall('\d+', line)
numslist.extend(nums)
我有一个生成字符串“Created Form XX”的文本文件,其中 XX 是一个整数。我只想提取整数并将其保存到列表中,以便稍后在我的 python 程序中使用。
下面是我到目前为止能够执行但无法显示数字的代码
import re
with open("filename.txt") as f:
for line in f:
if "form" in line:
re.findall('\d+', line)
如何打印最后一行代码的输出并分配给列表?
re.findall
returns 匹配值列表(在您的例子中是匹配的数字列表)。您应该将列表分配回一个变量(以便您以后可以使用它)-
nums = re.findall('\d+', line)
如果你想打印这个列表,你可以简单地做 -
print(nums)
如果您想在单独的行中打印每个匹配的元素,您可以使用 for
循环或 str.join()
-
for i in nums:
print(i)
您可以在顶部保留一个列表,其中存储您找到该文件的所有编号,并使用 nums
列表扩展该列表。例子-
import re
numslist = []
with open("filename.txt") as f:
for line in f:
if "form" in line:
nums = re.findall('\d+', line)
numslist.extend(nums)