如何从分割lis中提取第二组数据

2024-09-30 05:17:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试循环查看此文本文件,将文本拆分并将高低温数据提取为两个单独的列表: 我有下面的代码,给我的高温,但我被困在什么,我错过了得到低温。有人能解释一下我哪里出了问题吗?提前谢谢你的帮助。在

high =[]
low =[]
line =''

inFile = open('julyTemps.txt')

for line in inFile:
    fields = line.split(' ')

with open ('julyTemps.txt') as inFile:
    if fields != 3 or 'Boston' == fields[0] or 'Day' == fields[0]:
        high = (line.split(' ')[1:2] for line in inFile)
        high =[item[0] for item in high if item]
        high = ','.join([i for i in high if i.isdigit()])
with open ('julyTemps.txt') as inFile:
    if fields != 3 or 'Boston' == fields[0] or 'Day' == fields[0]:
        low = (line.split(' ')[2:2] for line in inFile)
        low = [item[0] for item in low if item]
        low =','.join([i for i in low if i.isdigit()])

TXT文件:

^{pr2}$

Tags: orintxtfieldsforifwithline
1条回答
网友
1楼 · 发布于 2024-09-30 05:17:22

只需在一个列表中读取文件,将最低值和最高值添加到两个单独的列表中:

lows, highs = [], []
with open ('julyTemps.txt') as inFile:
    for line in inFile:
        try:
            day, low, high = map(int, line.split())
        except ValueError:
            continue  # no temps on this line
        lows.append(low)
        highs.append(high)

我们只查看有3个整数值的行,其余的将抛出一个ValueError,这可能是因为行上没有3个值,或者是因为有非整数值。这些行被忽略。在

相关问题 更多 >

    热门问题