python - 在 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'
如何从输出中删除引号?
解决方案
你可以做:
a = set(["Blah", "Hello"])
str1 = ''.join(a)
推荐阅读
- swift - dyld:未加载库:在实际 iPhone 上安装时
- c++ - 使用具有自动范围和结构化绑定的 C++ 迭代向量矩阵?
- javascript - 我试图访问 DOM 中无线电输入的名称属性,但显然所有名称字段的值都为 false?
- regex - NiFi - 使用先前属性 + 硬编码文本创建新属性的新属性
- c++ - std 线程构造函数是否采用可变线程函数?
- java - FAB on click 根据当前显示的片段开始新活动
- c++ - MSVC 编译器尝试调用已删除的复制构造函数,而不是移动地图元素
- django - 正确的日志配置以禁用 django 错误电子邮件
- c++ - 滥用指针会产生分段错误。我仍然不确定如何纠正它
- mysql - Node.js 自动迁移