Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中生成包含关键字的字符串的子列表_Python_List - Fatal编程技术网

在python中生成包含关键字的字符串的子列表

在python中生成包含关键字的字符串的子列表,python,list,Python,List,嗨,我有一个python脚本中的字符串 cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7" 在这个缓冲区中,我想分离关键字后面的参数,比如关键字“Valid”后面的OP_1、OP_2、OP_3。以下每组参数必须保留在单独的列表中,例如,OP_4、OP_5必须在另一个列表中,OP_6、OP_7必须在另一个列表中。因此,我需要将列表分开,并为有效、无效或未使用的操作创建三个单独的列表 我已通过

嗨,我有一个python脚本中的字符串

cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
在这个缓冲区中,我想分离关键字后面的参数,比如关键字“Valid”后面的OP_1、OP_2、OP_3。以下每组参数必须保留在单独的列表中,例如,OP_4、OP_5必须在另一个列表中,OP_6、OP_7必须在另一个列表中。因此,我需要将列表分开,并为有效、无效或未使用的操作创建三个单独的列表

我已通过将字符串拆分为“\n”等方式将其转换为列表

cp_map.split('\n')
所以我得到了名单

cp_map = [u'Valid:', u'OP_1', u'OP_2', u'OP_3', u'Invalids:', u'OP_4'..............]

请帮助我创建多个有效、无效和未使用的操作列表。

您可以迭代列表并填写所需的子列表,或者使用list.index查找关键字“valid”、“invalid”、“unused”的索引,并使用切片符号拆分列表:

cp_map = [u'Valid:', u'OP_1', u'OP_2', u'OP_3', u'Invalid', u'OP_4', 'Unused', 'OP_n']
v_map = cp_map[1 : cp_map.index("Invalid")]
i_map = cp_map[cp_map.index("Invalid") + 1 : cp_map.index("Unused")]
u_map = cp_map[cp_map.index("Unused") + 1 : ]

print(v_map, i_map, u_map)

您可以遍历列表并填写所需的子列表,或者使用list.index查找关键字“Valid”、“Invalid”、“Unused”的索引,并使用切片表示法拆分列表:

cp_map = [u'Valid:', u'OP_1', u'OP_2', u'OP_3', u'Invalid', u'OP_4', 'Unused', 'OP_n']
v_map = cp_map[1 : cp_map.index("Invalid")]
i_map = cp_map[cp_map.index("Invalid") + 1 : cp_map.index("Unused")]
u_map = cp_map[cp_map.index("Unused") + 1 : ]

print(v_map, i_map, u_map)

您可以遍历列表并填写所需的子列表,或者使用list.index查找关键字“Valid”、“Invalid”、“Unused”的索引,并使用切片表示法拆分列表:

cp_map = [u'Valid:', u'OP_1', u'OP_2', u'OP_3', u'Invalid', u'OP_4', 'Unused', 'OP_n']
v_map = cp_map[1 : cp_map.index("Invalid")]
i_map = cp_map[cp_map.index("Invalid") + 1 : cp_map.index("Unused")]
u_map = cp_map[cp_map.index("Unused") + 1 : ]

print(v_map, i_map, u_map)

您可以遍历列表并填写所需的子列表,或者使用list.index查找关键字“Valid”、“Invalid”、“Unused”的索引,并使用切片表示法拆分列表:

cp_map = [u'Valid:', u'OP_1', u'OP_2', u'OP_3', u'Invalid', u'OP_4', 'Unused', 'OP_n']
v_map = cp_map[1 : cp_map.index("Invalid")]
i_map = cp_map[cp_map.index("Invalid") + 1 : cp_map.index("Unused")]
u_map = cp_map[cp_map.index("Unused") + 1 : ]

print(v_map, i_map, u_map)

这是一种方法:

cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
one_list = cp_map.split('\n')
sub_list, multi_lists = [], []
for item in one_list:
    if 'unused' in item.lower() or 'valid' in item.lower() or 'invalid' in item.lower():
        if sub_list:
            multi_lists.append(sub_list)
        sub_list = []
    sub_list.append(item)
multi_lists.append(sub_list)
print multi_lists
印刷品

[['Valid:', 'OP_1', 'OP_2', 'OP_3'], ['Invalid:', 'OP_4', 'OP_5'], ['Unused:', 'OP_6', 'OP_7']]

这是一种方法:

cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
one_list = cp_map.split('\n')
sub_list, multi_lists = [], []
for item in one_list:
    if 'unused' in item.lower() or 'valid' in item.lower() or 'invalid' in item.lower():
        if sub_list:
            multi_lists.append(sub_list)
        sub_list = []
    sub_list.append(item)
multi_lists.append(sub_list)
print multi_lists
印刷品

[['Valid:', 'OP_1', 'OP_2', 'OP_3'], ['Invalid:', 'OP_4', 'OP_5'], ['Unused:', 'OP_6', 'OP_7']]

这是一种方法:

cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
one_list = cp_map.split('\n')
sub_list, multi_lists = [], []
for item in one_list:
    if 'unused' in item.lower() or 'valid' in item.lower() or 'invalid' in item.lower():
        if sub_list:
            multi_lists.append(sub_list)
        sub_list = []
    sub_list.append(item)
multi_lists.append(sub_list)
print multi_lists
印刷品

[['Valid:', 'OP_1', 'OP_2', 'OP_3'], ['Invalid:', 'OP_4', 'OP_5'], ['Unused:', 'OP_6', 'OP_7']]

这是一种方法:

cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
one_list = cp_map.split('\n')
sub_list, multi_lists = [], []
for item in one_list:
    if 'unused' in item.lower() or 'valid' in item.lower() or 'invalid' in item.lower():
        if sub_list:
            multi_lists.append(sub_list)
        sub_list = []
    sub_list.append(item)
multi_lists.append(sub_list)
print multi_lists
印刷品

[['Valid:', 'OP_1', 'OP_2', 'OP_3'], ['Invalid:', 'OP_4', 'OP_5'], ['Unused:', 'OP_6', 'OP_7']]

如果您能确定结构和关键字:

token = '!*!'
cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
cp_map = cp_map.replace(':\n',':')
cp_map = cp_map.replace('\nInvalid', token + 'Invalid')
cp_map = cp_map.replace('\nUnused', token + 'Unused')
cp_map = cp_map.replace('\n',',')
cp_map = cp_map.split(token)
y = {key:op.split(',') for key, op in (cp.split(':') for cp in cp_map)}
valid = y['Valid']
unused = y['Unused']
invalid = y['Invalid']

>>> y
{'Unused': ['OP_6', 'OP_7'], 'Valid': ['OP_1', 'OP_2', 'OP_3'], 'Invalid': ['OP_4', 'OP_5']}
>>>

如果您能确定结构和关键字:

token = '!*!'
cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
cp_map = cp_map.replace(':\n',':')
cp_map = cp_map.replace('\nInvalid', token + 'Invalid')
cp_map = cp_map.replace('\nUnused', token + 'Unused')
cp_map = cp_map.replace('\n',',')
cp_map = cp_map.split(token)
y = {key:op.split(',') for key, op in (cp.split(':') for cp in cp_map)}
valid = y['Valid']
unused = y['Unused']
invalid = y['Invalid']

>>> y
{'Unused': ['OP_6', 'OP_7'], 'Valid': ['OP_1', 'OP_2', 'OP_3'], 'Invalid': ['OP_4', 'OP_5']}
>>>

如果您能确定结构和关键字:

token = '!*!'
cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
cp_map = cp_map.replace(':\n',':')
cp_map = cp_map.replace('\nInvalid', token + 'Invalid')
cp_map = cp_map.replace('\nUnused', token + 'Unused')
cp_map = cp_map.replace('\n',',')
cp_map = cp_map.split(token)
y = {key:op.split(',') for key, op in (cp.split(':') for cp in cp_map)}
valid = y['Valid']
unused = y['Unused']
invalid = y['Invalid']

>>> y
{'Unused': ['OP_6', 'OP_7'], 'Valid': ['OP_1', 'OP_2', 'OP_3'], 'Invalid': ['OP_4', 'OP_5']}
>>>

如果您能确定结构和关键字:

token = '!*!'
cp_map = "Valid:\nOP_1\nOP_2\nOP_3\nInvalid:\nOP_4\nOP_5\nUnused:\nOP_6\nOP_7"
cp_map = cp_map.replace(':\n',':')
cp_map = cp_map.replace('\nInvalid', token + 'Invalid')
cp_map = cp_map.replace('\nUnused', token + 'Unused')
cp_map = cp_map.replace('\n',',')
cp_map = cp_map.split(token)
y = {key:op.split(',') for key, op in (cp.split(':') for cp in cp_map)}
valid = y['Valid']
unused = y['Unused']
invalid = y['Invalid']

>>> y
{'Unused': ['OP_6', 'OP_7'], 'Valid': ['OP_1', 'OP_2', 'OP_3'], 'Invalid': ['OP_4', 'OP_5']}
>>>

暴力强迫:)我建议
re
暴力强迫:)我建议
re
暴力强迫:)我建议
re
暴力强迫:)我建议
re
似乎你在问几个问题-最好“接受”最合适的一个,并积极评价有用的-这鼓励其他人在未来回答问题!似乎你在问几个问题-最好是“接受”最合适的问题,并积极评价有用的问题-这鼓励其他人在将来回答问题!似乎你在问几个问题-最好是“接受”最合适的问题,并积极评价有用的问题-这鼓励其他人在将来回答问题!似乎你在问几个问题-最好是“接受”最合适的问题,并积极评价有用的问题-这鼓励其他人在将来回答问题!