我有一个目录,其中包含100个以下格式的文件。
summary-0000016b9bf45ec8-AAAACCCC0286.json
summary-0000016b9bf47180-AAAACCCC0286.json
summary-0000016b9bf47746-AAAACCCC0286.json
summary-0000016b9bf47cd8-AAAACCCC0286.json
summary-0000016b9bf47f48-AAAACCCC0286.json
summary-0000016b9bf4818e-AAAACCCC0286.json
我需要在摘要后提取字段并创建一个列表。我正在使用一个空列表,并尝试将输出附加到该列表。下面是创建空列表并将我要提取的字段附加到其中的代码。
for files in dir:
if 'summary' in files and len(files.split('-')) > 1:
s_addr = []
s_addr.append(files.split('-')[1])
print (s_addr)
我得到的输出是提取的每个项目的列表,如下所示:
['0000016b9bf31d5e']
['0000016b9bf45ec8']
['0000016b9bf1d8c4']
['0000016b9bf3c920']
['0000016b9bf2371f']
['0000016b9bf3d8ec']
['0000016b9bf11cb6']
预期输出为:
['0000016b9bf31d5e','0000016b9bf45ec8','0000016b9bf1d8c4','0000016b9bf3c920','0000016b9bf2371f','0000016b9bf3d8ec','0000016b9bf11cb6']
我在做什么错了?
答案 0 :(得分:1)
您的订购错误。您不想每次都重写列表,因此需要将s_addr
放在for
循环之外:
s_addr = []
for files in dir:
if 'summary' in files and len(files.split('-')) > 1:
s_addr.append(files.split('-')[1])
print (s_addr)