从文件生成Python列表,并从源匹配返回特定值

时间:2019-06-09 08:16:48

标签: python

我正在尝试在python中构建脚本,该脚本将读取包含策略映射列表的文件并生成一个列表。需要参考特定策略映射的其他来源,并仅从当前列表中返回该值。

我已经使用readlines()读取了文件并生成了一个列表。无法合并索引,如下所示。

['policy-map mohideen1\n', ' class class-default\n', '  service-policy mohideen_child\n', '  police rate 80000000 bps burst 1250000 bytes peak-burst 1250000 bytes \n', '   conform-action transmit\n', '   exceed-action drop\n', '  !\n', ' !\n', ' end-policy-map\n', '!\n', 'policy-map mohideen2\n', ' class class-default\n', '  service-policy mohideen2_child\n', '  police rate 100000000 bps burst 1562500 bytes peak-burst 1562500 bytes \n', '   conform-action transmit\n', '   exceed-action drop\n', '  !\n', ' !\n', ' end-policy-map\n', '!\n', '\n']

预期输出应如下: 其中应该结合\ n'之后的所有索引,并且第二个索引应该在此之后,理想情况下,我需要在此列表中有2个索引。

按预期生成帖子列表,我在记事本中有一个策略列表,需要对其进行迭代,如果在现有新列表中找到匹配项,则应返回特定索引。

with open('ICR_input.txt' , 'r') as file_object:
    full = file_object.readlines()
    print (full)
    s = full.split('end-policy-map')
    print(s)

输出

SOURCE = ['a\n' , 'b\n',  '!\n', 'c\n' , 'd\n' ,'!\n']

进行如下修改

SOURCE1 =  ['a\n b\n', 'c\n d\n']

1 个答案:

答案 0 :(得分:0)

我猜你想用“!\ n”分隔文本吗?

您可能想使用.read()而不是.readlines()以便首先获取字符串。然后,使用split(“!\ n”)创建所需的列表。

我自由地为您编写了一个函数:

ConfigureApplicationCookie