如何在Python中提取带方括号的序列数据并计算平均值
处理带方括号的序列数据并计算平均值
核心步骤
- 移除每行首尾的方括号,提取内部的数字内容
- 将提取的内容按逗号分割为单个数字字符串,转换为整数类型
- 计算整数列表的平均值并输出
Python 实现示例
处理内存中的数据
# 模拟输入的序列数据 input_lines = [ "[1,3]", "[1,3]", "[2,4]", "[3]", "[4]" ] for line in input_lines: # 去除首尾的方括号 cleaned_content = line.strip("[]") # 按逗号分割成数字字符串列表 num_strings = cleaned_content.split(",") # 转换为整数列表 numbers = [int(s) for s in num_strings] # 计算平均值(这里用整数除法,结果与预期一致) average = sum(numbers) // len(numbers) print(average)
处理文件中的数据
如果数据存储在文件(比如data.txt)中,可以用以下代码读取处理:
with open("data.txt", "r") as file: for line in file: # 去掉换行符和首尾空白字符 line = line.strip() if not line: continue cleaned_content = line.strip("[]") num_strings = cleaned_content.split(",") numbers = [int(s) for s in num_strings] average = sum(numbers) // len(numbers) print(average)
关键代码说明
strip("[]"):精准移除字符串首尾的[和],不管是单数字还是双数字的行都能处理split(","):将字符串按逗号分割成列表,单数字行分割后只会得到一个元素的列表sum(numbers) // len(numbers):求和后除以元素个数,用整数除法保证结果为整数,和预期输出匹配
内容的提问来源于stack exchange,提问作者YURI
相关产品推荐
相关产品推荐

