我有一个包含以下格式的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
我需要在摘要后提取字段并创建它的list。我正在使用一个空的list并试图将我的输出附加到它。下面是创建空list并将我提取的字段附加到其中的代码。
for files in dir:
if 'summary' in files and len(files.split('-')) > 1:
s_addr = []
s_addr.append(files.split('-')[1])
print (s_addr)
我得到的输出是每个项目的list,如下所示:
['0000016b9bf31d5e']
['0000016b9bf45ec8']
['0000016b9bf1d8c4']
['0000016b9bf3c920']
['0000016b9bf2371f']
['0000016b9bf3d8ec']
['0000016b9bf11cb6']
预期产出是:
['0000016b9bf31d5e','0000016b9bf45ec8','0000016b9bf1d8c4','0000016b9bf3c920','0000016b9bf2371f','0000016b9bf3d8ec','0000016b9bf11cb6']
我究竟做错了什么?
分析解答
你的订购是错误的。您不希望每次都重写list,因此您需要将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)