首页 > 解决方案 > 在 Python 中将集合转换为列表

问题描述

我正在将一个集合转换为一个列表,然后在 Python 中转换为一个字符串。我可以删除字符串输出中的括号,但我也想删除字符串周围的引号。

这是我尝试过的:

 instance_list = ec2.describe_instances()
    for reservation in instance_list["Reservations"]:
            for instance in reservation.get("Instances", []):
                tree = objectpath.Tree(instance)
                private_ips =  set(tree.execute('$..PrivateIpAddress'))
                if len(private_ips) == 0:
                    private_ips = None
                if private_ips:
                private_ips_list = list(private_ips)
                private_ips_list = str(private_ips_list).replace('[','').replace(']','').replace('\','')
               else:
                   public_ips_list = None

这是我得到的错误:

  File ".\aws_ec2_list_instances.py", line 64
    private_ips_list = str(private_ips_list).replace('[','').replace(']','').replace('\','')
                                                                                           ^
SyntaxError: EOL while scanning string literal

如果我将底线更改为此,而不进行最终替换,则脚本将起作用。

private_ips_list = str(private_ips_list).replace('[','').replace(']','')

但报价仍然存在:

Private IP: '10.48.136.41'

如何从输出中删除引号?

标签: python

解决方案


你可以做:

a = set(["Blah", "Hello"])
str1 = ''.join(a)

推荐阅读