在python中将字符串转换为元组

我有一个从类似“(‘mono’)”之类的软件返回的字符串,我需要将字符串转换为元组.

我当时在想使用ast.literal_eval(“(‘mono’)”),但它说的是格式错误的字符串.

解决方法:

由于需要元组,因此在某些情况下,您必须期望包含不止元素的列表.不幸的是,您没有给出琐碎的(单声道)示例,因此我们不得不猜测.这是我的猜测:

"(mono)"
"(two,elements)"
"(even,more,elements)"

如果所有数据看起来都是这样,请通过分割字符串(减去周围的括号)将其转换为列表,然后调用元组构造函数.即使在单元素情况下也可以使用:

assert data[0] == "(" and data[-1] == ")"
elements = data[1:-1].split(",")
mytuple = tuple(elements)

或第一步:elements = tuple(data [1:-1] .split(“,”)).
如果您的数据与我的示例不同,请编辑问题以提供更多详细信息.

上一篇:python-向元组添加元素的有效方法


下一篇:java-Oracle无效标识符不理解字符串