首页 > 解决方案 > 将逗号分隔的列表值写入python中的文本文件

问题描述

我有一个列表,其中每个值都用逗号分隔。我需要编写一个文本文件,其中每个逗号分隔值作为下一行。

我在我的列表下面添加:

my_list = ['add IPAddress name=Sevone Address=10.241.46.0/25, 10.241.46.128/25, 10.241.47.0/27', 'add ServiceUDP name=Sevone_Service DestinationPorts=161  162', 'add IPAddress name=CMG Address=10.95.67.128/26,10.95.67.192/26', 'add IPAddress name=DNS Address=10.95.58.168/29,10.95.58.192/28', 'add IPAddress name=FW Address=10.95.58.208/28', 'add IPAddress name=SRAS, Enrichment Server Address=10.19.71.0/25, 10.19.72.0/24, 10.19.75.194, 10.19.75.195, 10.19.75.196, 10.19.75.210, 10.40.46.0/25, 10.40.55.0/24', 'add ServiceUDP name=SRAS, Enrichment Server_Service DestinationPorts=10080, 22, 2222, 23, 443, 5900, 80, 8085, 8143, 8443, 9097, 9098, 80, 8080.161,162', 'add IPAddress name=CMG Address=10.95.67.128/26,10.95.67.192/26', 'add IPAddress name=SPS Address=10.95.59.64/26', 'add IPAddress name=DNS Address=10.95.58.168/29,10.95.58.192/28', 'add IPAddress name=FW Address=10.95.58.208/28']

标签: python-3.xlist

解决方案


我认为您正在寻找方法str.join()

In [1]: my_list = ['add IPAddress name=Sevone Address=10.241.46.0/25, 10.241.46.128/25, 10.241.47.0/27', 'add ServiceUDP name=Sevone_Servic
    ...: e DestinationPorts=161 162', 'add IPAddress name=CMG Address=10.95.67.128/26,10.95.67.192/26', 'add IPAddress name=DNS Address=10.9
    ...: 5.58.168/29,10.95.58.192/28', 'add IPAddress name=FW Address=10.95.58.208/28', 'add IPAddress name=SRAS, Enrichment Server Address=
    ...: 10.19.71.0/25, 10.19.72.0/24, 10.19.75.194, 10.19.75.195, 10.19.75.196, 10.19.75.210, 10.40.46.0/25, 10.40.55.0/24', 'add ServiceUD
    ...: P name=SRAS, Enrichment Server_Service DestinationPorts=10080, 22, 2222, 23, 443, 5900, 80, 8085, 8143, 8443, 9097, 9098, 80, 8080.
    ...: 161,162', 'add IPAddress name=CMG Address=10.95.67.128/26,10.95.67.192/26', 'add IPAddress name=SPS Address=10.95.59.64/26', 'add I
    ...: PAddress name=DNS Address=10.95.58.168/29,10.95.58.192/28', 'add IPAddress name=FW Address=10.95.58.208/28']

In [2]: print("\n".join(my_list))
add IPAddress name=Sevone Address=10.241.46.0/25, 10.241.46.128/25, 10.241.47.0/27
add ServiceUDP name=Sevone_Service DestinationPorts=161 162
add IPAddress name=CMG Address=10.95.67.128/26,10.95.67.192/26
add IPAddress name=DNS Address=10.95.58.168/29,10.95.58.192/28
add IPAddress name=FW Address=10.95.58.208/28
add IPAddress name=SRAS, Enrichment Server Address=10.19.71.0/25, 10.19.72.0/24, 10.19.75.194, 10.19.75.195, 10.19.75.196, 10.19.75.210, 10.40.46.0/25, 10.40.55.0/24
add ServiceUDP name=SRAS, Enrichment Server_Service DestinationPorts=10080, 22, 2222, 23, 443, 5900, 80, 8085, 8143, 8443, 9097, 9098, 80, 8080.161,162
add IPAddress name=CMG Address=10.95.67.128/26,10.95.67.192/26
add IPAddress name=SPS Address=10.95.59.64/26
add IPAddress name=DNS Address=10.95.58.168/29,10.95.58.192/28
add IPAddress name=FW Address=10.95.58.208/28

现在,如果要将其保存为文本文件,只需使用以下命令:

with open("file_name.txt", "w") as f:
    f.write("\n".join(my_list))

推荐阅读