gpt4 book ai didi

python - 用于在一行中查找数字的正则表达式 (Python)

转载 作者:太空宇宙 更新时间:2023-11-04 08:37:13 25 4
gpt4 key购买 nike

我刚刚学习正则表达式,我需要读入一个文本文件并找到数字的每个实例并找到所有数字的总和。

import re

sum = 0
list_of_numbers = list()
working_file = open("sample.txt", 'r')
for line in working_file:
line = line.rstrip()
working_list = re.findall('[0-9]+', line)
if len(working_list) != 1:
continue
print(working_list)
for number in working_list:
num = int(number)
list_of_numbers.append(num)
for number in list_of_numbers:
sum += number
print(sum)

我放置了 print(working_list) 以尝试调试它并查看是否所有数字都被正确找到并且我已经看到,通过手动扫描文本文件,一些数字正在被跳过,而其他则没有。我很困惑为什么我认为我的正则表达式保证任何具有任意数量数字的字符串都将添加到列表中。

Here is the file .

最佳答案

您只验证只有一个数字的行,因此由于 if len(working_list) != 1: continue 将跳过包含两个数字的行,这基本上是说“如果这一行中没有一个数字,则跳过”,您的意思可能类似于 if len(working_list) < 1: continue

关于python - 用于在一行中查找数字的正则表达式 (Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48086131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com