将字符串元组转换为元组

2024-04-25

我有一个具有以下格式的输入文件:

[(1,1),(2,1)], 'add', 11
[(1,2),(1,3)], 'div', 2
[(3,1),(4,1),(3,2),(4,2)], 'times', 240
[(2,2),(2,3)], 'minus', 3
...

每一行都是我要创建的一个元组。如何将每个字符串行转换为元组?

例如,线string "[(1,1),(2,1)], 'add', 11"应转换为元组:([(1, 1), (2, 1)], 'add', 11).

到目前为止,我尝试过:

tuples = []
for line in file:
    tuples.append((line,))

但我正在进行字符串转换

 [("[(1,1),(2,1)], 'add', 11\n",), ("[(1,2),(1,3)], 'div', 2\n",), ("[(3,1),(4,1),(3,2),(4,2)], 'times', 240\n",), ("[(2,2),(2,3)], 'minus', 3",)]

您可以使用ast.literal_eval https://docs.python.org/2/library/ast.html#ast.literal_eval as:

>>> import ast
>>> my_string = "[(1,1),(2,1)], 'add', 11"

>>> ast.literal_eval(my_string)
([(1, 1), (2, 1)], 'add', 11)

根据ast.literal_eval(node_or_string)文档 https://docs.python.org/2/library/ast.html#ast.literal_eval:

安全地评估表达式节点或包含 Python 文字或容器显示的 Unicode 或 Latin-1 编码字符串。提供的字符串或节点只能包含以下 Python 文字结构:字符串、数字、元组、列表、字典、布尔值和 None。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将字符串元组转换为元组 的相关文章

随机推荐

  • Android 在 ScrollView 上 PullTo 刷新

    我知道类似 pullToRefresh 的功能在 iPhone 中可用 而对于 Android 我们必须手动管理它 我得到了一些使用 pullToRefresh 的示例 但它仅适用于 ListView 就我而言 我想实现滚动视图 Googl
  • 哪些浏览器支持console.log()?

    所有浏览器都支持这个吗 我想使用输出错误console log 但想知道是否所有浏览器都支持此功能 console log Error etc 不 并非所有浏览器都支持console log因为它不是标准的一部分 而是 DOM 的扩展 因此
  • 存储对字符串的引用

    我有一个具有 3 个字符串属性的类 我想将它们存储在一个列表中 以便当我更改列表的字符串时 它们也会在类中更新 如果我使用类对象 这很容易做到 但字符串似乎表现不同 它似乎为列表创建了对象的副本 而不是拥有指向该对象的指针 如果是 C 我该
  • 在 R 中使用 stringr 的具有非捕获组的正则表达式

    我正在尝试将非捕获组与str extract函数从stringr包裹 这是一个例子 library stringr txt lt foo str extract txt f o 这返回 foo 虽然我希望它只会返回 oo 就像在这篇文章中一
  • 在 Windows Vista / 7 中从 C# 访问网络摄像头的“首选”方法

    我发现了很多讨论 WIA Windows 便携式设备 API 和 DirectShow 并给出示例代码 用于从 C 访问网络摄像头的帖子 但是当您研究每种方法时 您似乎会遇到这些都是 旧 方法的参考资料 因此 问题是 当运行 Windows
  • 将外部链接设为 target="_blank" 是否可以接受?

    我有点困惑是否应该在我的网站上创建指向外部的链接 target blank 这种做法是否会对您网站的可用性产生负面影响 即破坏 后退按钮轨迹 大多数用户是否普遍认为它很烦人 在某些情况下可以接受 但在其他情况下则不能接受吗 我希望为我的所有
  • kubectl:描述与获取 -o <格式>

    在 kubectl 中 两者describe and get o
  • 我们如何以编程方式检测设备正在运行哪个 iOS 版本? [复制]

    这个问题在这里已经有答案了 我想检查用户是否在低于 5 0 的 iOS 上运行应用程序并在应用程序中显示标签 如何以编程方式检测用户设备上正在运行哪个 iOS Thanks 当前最佳版本 不需要在 NSString 中处理数字搜索就是定义m
  • Scrapy Python Craigslist Scraper

    我正在尝试使用 Craigslist 分类广告Scrapy提取待售物品 我能够提取日期 帖子标题和帖子 URL但提取时遇到问题price 由于某种原因 当前代码提取all的价格 但是当我删除 在价格范围之前查找价格字段返回为空 有人可以查看
  • WHERE 日期时间早于某个时间(例如 15 分钟)

    我在看 MySQL选择时间戳列从现在到10分钟前的行 https stackoverflow com questions 3480947 mysql select rows where timestamp column between no
  • Visual Studio 2015 错误 500.19

    我在 VS 2015 中打开项目时遇到问题 在 VS 2012 和 VS 2013 中一切正常 但是当我在 VS 2015 中启动 Web 应用程序时 加载 css 和 js 文件时出现错误 500 19 我知道 这应该是因为权限的原因 所
  • 1 个 aspx 文件中唤醒 .NET 的绝对最少代码

    作为编写 aspx 文件的绝对最小值 您会编写什么 目的是强制 net 处理程序运行 有时我想做一个简短的手写代码来检查iis功能 在较旧的语言中这很容易 HTML你好世界 ASP ASP NET这工作得很好 但很笨拙 是的 不过 如果还要
  • ngserve --open 报告端口 4200 已在使用,但实际上尚未使用

    当我尝试使用命令运行我的角度应用程序时 ng服务 o 端口4200 它显示错误 例如 端口 4200 已被使用 请尝试其他端口 但我检查发现 使用此命令该端口中没有正在运行的进程 sudo lsof i P n sudo lsof i P
  • Web API ODataResult 始终序列化为 Atom

    我正在从新返回 ODataResultWeb API OData包 http blogs msdn com b alexj archive 2012 08 15 odata support in asp net web api aspx如下
  • 如何使用environment.yaml文件在Python中创建虚拟环境?

    我有一个requirements yaml 文件 我想使用它创建一个python 虚拟环境 该文件看起来像这样 dependencies python 3 7 5 pip 19 3 1 pip jupyter 1 0 0 pandas 1
  • 如何在rails中为options_from_collection_for_select添加数据属性

    将此视为我的选择标签 这工作正常 但我需要一个数据属性 product id不管用 我怎样才能得到ID too 尝试以下操作
  • tx_news 中内容元素的翻译显示默认语言

    环境 打字3 8LTS 新闻 6 3 0 也用 7 x 进行了检查 新闻列表视图 页面 已翻译 新闻详细视图 页面 已翻译 新闻记录翻译 Problem 当我访问语言 UID 1 的页面时 新闻记录本身会被翻译 例如headline 在详细
  • 类消息的接收者 SKViaPoint 是前向声明

    我试图用以下命令创建 SKViaPoint 的实例 SKViaPoint point SKViaPoint viaPoint 1 withCoordinate coordinate But I am getting a following
  • 从 p:inputText javascript 获取值文本

    我正在尝试一些简单的事情 只是为了获取 a 中的文本值p inputText想到了 Javascript 但我不明白 也许这是一个与 Primefaces 不同的过程 因为如果我不使用它 我就不会遇到这个问题 My code
  • 将字符串元组转换为元组

    我有一个具有以下格式的输入文件 1 1 2 1 add 11 1 2 1 3 div 2 3 1 4 1 3 2 4 2 times 240 2 2 2 3 minus 3 每一行都是我要创建的一个元组 如何将每个字符串行转换为元组 例如