根据10个站点2009-2018年的逐日 温度数据(station.txt ),写一个 函数,当输入一个站点编号时,输 出该站点的经纬度信息,夏季平均 温度,夏季的最高气温和最低气温
时间: 2024-05-14 08:15:05 浏览: 87
下面是一个可能的实现:
```python
def get_station_info(station_id):
# 打开文件并读取数据
with open('station.txt', 'r') as f:
data = f.readlines()
# 找到指定站点的数据行
for line in data:
fields = line.strip().split()
if fields[0] == station_id:
# 提取经纬度信息
lat = float(fields[2])
lon = float(fields[3])
# 提取夏季温度数据
summer_temps = [float(x) for x in fields[4:]]
summer_temps = summer_temps[5:8] + summer_temps[17:20]
# 计算夏季平均温度和最高最低气温
avg_temp = sum(summer_temps) / len(summer_temps)
max_temp = max(summer_temps)
min_temp = min(summer_temps)
# 输出结果
print(f'Station ID: {station_id}')
print(f'Latitude: {lat}')
print(f'Longitude: {lon}')
print(f'Summer average temperature: {avg_temp:.1f} C')
print(f'Summer highest temperature: {max_temp:.1f} C')
print(f'Summer lowest temperature: {min_temp:.1f} C')
return
# 如果没有找到指定站点,输出错误信息
print(f'Station {station_id} not found')
```
这个函数首先打开文件并读取全部数据行。然后它遍历每一行,找到站点编号与输入参数相同的那一行。对于这一行,它提取经纬度信息和夏季温度数据,然后计算出夏季平均温度、最高气温和最低气温。最后,它输出结果并返回。如果没有找到指定站点,它输出错误信息。
阅读全文