python读取多个文件夹_在python中如何从不同的文件夹读取多个文件

我在不同的文件夹中有年度数据文件。每个文件包含从1月1日到12月31日的每日数据。数据文件名类似于AS060419.67,其中最后四位代表年份,即1967年,0604是文件夹名。在

我试图使用下面的代码读取这些多个文件,但它只读取上一个文件夹中去年的数据def date_parser(doy, year):

return dt.datetime.strptime(doy.zfill(3)+year, ‘%j%Y’)

files = glob.glob(‘????/AS*’)

files.sort()

files

STNS = {}

for f in files:

stn_id, info = f.split(‘/’)

year = “”.join(info[-5:].split(‘.’))

print (f,stn_id)

with open(f) as fo:

data = fo.readlines()[:-1]

data = [d.strip() for d in data]

data = ‘\n’.join(data)

with open(‘data.dump’, ‘w’) as dump:

dump.write(data)

parser = lambda date: date_parser(date, year=year)

df = pd.read_table(‘data.dump’, delim_whitespace=True,names=[‘date’,’prec’],

na_values=’DNA’, parse_dates=[0], date_parser=parser, index_col=’date’ )

df.replace({‘T’: 0})

df = df.apply(pd.to_numeric, args=(‘coerce’,))

df.name = stn_name

df.sid = stn_id

if stn_id not in STNS.keys():

STNS[stn_name] = df

else:

STNS[stn_id] = STNS[stn_id].append(df)

STNS[stn_id].name = df.name

STNS[stn_id].sid = df.sid

outfile.write(line)

为了策划阴谋

^{pr2}$

问题是它只读取上一个文件夹中的去年数据。有人能帮我弄清楚吗问题。你的我们将非常感谢您的帮助。在

Original: https://blog.csdn.net/weixin_39719042/article/details/113517461
Author: weixin_39719042
Title: python读取多个文件夹_在python中如何从不同的文件夹读取多个文件

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/742313/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球