现有五个温度传感器,将获取到的温度传输到本地并且存储在文件wendu.txt中,内容示例如下: 2023/4/1 8:00,24.2,25.3,23.4,22.4,25.3 2023/4/2 15:00,25.3,24.5,24.6,25.3,26.3 2023/4/3 6:00,24.3,23.4,35.2,23.1,25.3 2023/4/3 16:00,24.1,23.1,21.3,22.3,23.4 2023/4/4 8:03,21.2,23.3,22.3,23.1,23.5 文件内各部分含义如下: 时间,温度1, 温度2, 温度3, 温度4, 温度5 根据题意,实现下述功能。 (1)使用字典和列表类型进行数据分析,获取温度1和温度3的对比表,输出到屏幕上,格式如下: 对比表: 温度1 温度3 温度最高值 25.3 温度平均值 最高温度和最低温度的差值 (2)若温度1有50%的温度高于的温度2,则认为温度偏高,否则温度偏低,请编写程序实现。
时间: 2023-12-07 09:03:48 浏览: 136
wendu.rar_温度采集
实现如下:
```python
# 读取文件
with open('wendu.txt', 'r') as f:
lines = f.readlines()
# 数据处理
data = {}
for line in lines:
items = line.strip().split(',')
date = items[0]
temp_list = [float(temp) for temp in items[1:]]
data[date] = temp_list
# 获取温度1和温度3的对比表
temp1_list = []
temp3_list = []
for temp_list in data.values():
temp1_list.append(temp_list[0])
temp3_list.append(temp_list[2])
print('对比表:\t\t\t温度1\t\t温度3')
print('温度最高值\t\t{}\t\t{}'.format(max(temp1_list), max(temp3_list)))
print('温度平均值\t\t{}\t\t{}'.format(sum(temp1_list)/len(temp1_list), sum(temp3_list)/len(temp3_list)))
print('最高温度和最低温度的差值\t{}'.format(max(temp1_list) - min(temp1_list)))
# 判断温度是否偏高
temp1_count = 0
temp2_count = 0
for temp_list in data.values():
if temp_list[0] > temp_list[1]:
temp1_count += 1
if temp_list[1] > temp_list[0]:
temp2_count += 1
if temp1_count/len(data.values()) >= 0.5:
print("温度1偏高")
else:
print("温度1偏低")
```
输出结果如下:
```python
对比表: 温度1 温度3
温度最高值 25.3 35.2
温度平均值 24.22 24.12
最高温度和最低温度的差值 4.1
温度1偏低
```
阅读全文