Python 如何在列表中分隔逗号分隔的值,使其成为列表的单个值

Python 如何在列表中分隔逗号分隔的值,使其成为列表的单个值,python,Python,我在python中获取列表中输出的一些开关命令,我能够在列表中获得结果,但该列表包含两个元素,甚至这些元素都是逗号分隔的,我希望将这些逗号分隔的值作为列表的单个元素 我使用的是netmiko模块,其中我使用python在列表中获取了一些命令输出 for k in range(len(cli_commands)): net_connect.send_command(cli_commands[k])

我在python中获取列表中输出的一些开关命令,我能够在列表中获得结果,但该列表包含两个元素,甚至这些元素都是逗号分隔的,我希望将这些逗号分隔的值作为列表的单个元素

我使用的是netmiko模块,其中我使用python在列表中获取了一些命令输出

                for k in range(len(cli_commands)):
                    net_connect.send_command(cli_commands[k])
                    vall=net_connect.send_command(cli_commands[k])
                    myList1.append(vall)
              ```print(myList)

Actual result is:

['Cisco IOS Software, C2960S Software (C2960S-UNIVERSALK9-M), Version 15.0(2)SE11, RELEASE SOFTWARE (fc3)', 'NAME: "1", DESCR: "WS-C2960S-24TS-L"\nPID: WS-C2960S-24TS-L  , VID: V02  , SN: FOC1452X5C5\n\n']


Expectation:

['Cisco IOS Software', 'C2960S Software (C2960S-UNIVERSALK9-M)', 'Version 15.0(2)SE11', 'RELEASE SOFTWARE (fc3)', 'NAME: "1"', 'DESCR: "WS-C2960S-24TS-L"\nPID: WS-C2960S-24TS-L'  ,' VID: V02'  , 'SN: FOC1452X5C5\n\n']

or
['Cisco IOS Software','C2960S Software (C2960S-UNIVERSALK9-M)',Version 15.0(2)SE11','DESCR: "WS-C2960S-24TS-L"\nPID: WS-C2960S-24TS-L','SN: FOC1452X5C5\n\n']

看起来您需要
str.split
list.extend

Ex:

myList1 = []        
for k in range(len(cli_commands)):
    net_connect.send_command(cli_commands[k])
    vall=net_connect.send_command(cli_commands[k])
    myList1.extend(vall.strip().split(","))
print(myList1)

您必须
.split(',')
每个字符串才能得到一个嵌套列表,然后使其简单化。使用
.split()
可删除每个子字符串开头和结尾处的额外空格

the_list = ['Cisco IOS Software, C2960S Software (C2960S-UNIVERSALK9-M), Version 15.0(2)SE11, RELEASE SOFTWARE (fc3)', 'NAME: "1", DESCR: "WS-C2960S-24TS-L"\nPID: WS-C2960S-24TS-L  , VID: V02  , SN: FOC1452X5C5\n\n']

the_list = [map(lambda x: x.strip(), item.split(',')) for item in the_list]
new_list = [item for sub_list in the_list for item in sub_list]
第一行将_列表中
的每个字符串转换为一个映射生成器,该映射生成器在除以
“,”
字符后将
.strip()
(修剪空格)应用于每个子字符串。第二个是简单的列表,这是
[[1,2],[3,4]]
将变成
[1,2,3,4]
。这相当于:

the_list = ['Cisco IOS Software, C2960S Software (C2960S-UNIVERSALK9-M), Version 15.0(2)SE11, RELEASE SOFTWARE (fc3)', 'NAME: "1", DESCR: "WS-C2960S-24TS-L"\nPID: WS-C2960S-24TS-L  , VID: V02  , SN: FOC1452X5C5\n\n']

new_list = []
for string in the_list:
    for item in string.split(','):
        new_list.append(item.strip())

绝对毁灭的回答是正确的,但你必须这样使用它

myList = ['Cisco IOS Software, C2960S Software (C2960S-UNIVERSALK9-M), Version 15.0(2)SE11, RELEASE SOFTWARE (fc3)', 'NAME: "1", DESCR: "WS-C2960S-24TS-L"\nPID: WS-C2960S-24TS-L  , VID: V02  , SN: FOC1452X5C5\n\n']

cs_mylist = []
for y in [x.split(',') for x in myList]:
    for z in y:
        cs_mylist.append(z)

print(cs_mylist)

查找Strings的
.split()
方法感谢您的帮助,我得到了答案。