python - 用python解析一个像字符串一样的元组
问题描述
我有一个像字符串一样的元组:
("a",10,4,"abc")
我想解析它以包含字符串列表中的每个项目:
ans = [a, 10, 4, abc]
在示例中,我很容易实现用逗号分割字符串行。
但是,字符串行中的字符串项可能有逗号和双引号,例如
("abc",10,-4,"abc"","d,ef")
我想得到字符串列表。
ans = [abc, 10, -4, abc", d,ef]
有没有人有一个用 Python 实现它的好主意?
解决方案
如果字符串是用双引号封装的,并且您在"
其中使用 a 。所以需要使用转义字符\
来表示它是一个字符。
试试这个代码!
import ast
print(list(ast.literal_eval('("abc",10,-4,"abc\\"","d,ef")')))
输出 :
['abc', 10, -4, 'abc"', 'd,ef']
推荐阅读
- python - 在列表中查找数字的频率
- ruby - RSpec如何存根产量并确保它不会命中
- javascript - 如何在 Angular 中使用 DatePipe 管理时区?
- python - 如何将 numpy 数组与 pandas 系列相乘?
- java - 自定义 JFrame 中的按钮功能
- swift - 首次打开 App 时在 UserDefaults 中保存日期
- angular - Angular - 基于屏幕宽度的完整日历更改配置
- unit-testing - 通过 Google Apps 脚本中的闭包搜索树节点
- python - 使用 expand_dims 时,“尝试将 'dim' 转换为张量并失败”
- git - Bitbucket 无法使用 Jira 密钥推送提交