将带有变量的文本文件导入python

2024-03-20

我的目标:我创建的程序的目的是让用户输入元素的名称。然后 python 读入一个外部文件,找到所请求元素分配的值,最后将该值打印出来。

例如 -

>>> helium
2

问题是我不知道如何让 python 解释如下所示的文本文件

hydrogen = 1
helium =  2
lithium = 3

作为代码。因此,当我输入 print(lithium) 时,出现错误。

我的请求: 有人可以告诉我如何才能读出这些值并将其打印出来吗?我不需要任何有关用户输入等方面的帮助。

提前致谢。


UPDATE

我用过这段代码:

import json
file = open("noble_gases.json","r")
elements = json.loads(file.read())

Nobel_gases.json 看起来像这样:

"helium" : 2,
"neon" : 10,
"argon" : 18,
"krypton" : 36,
"xenon" : 54,
"radon" : 86,

我现在收到此错误:

Traceback (most recent call last):
  File "C:\Python34\Programs\Python Mini Project\finder.py", line 3, in <module>
    elements = json.loads(file.read())
  File "C:\Python34\lib\json\__init__.py", line 318, in loads
    return _default_decoder.decode(s)
  File "C:\Python34\lib\json\decoder.py", line 346, in decode
    raise ValueError(errmsg("Extra data", s, end, len(s)))
ValueError: Extra data: line 1 column 10 - line 7 column 1 (char 9 - 85)

感谢所有做出贡献的人。我对响应速度感到惊讶。


UPDATE:

删除 json 文件中的最后一个逗号就可以了。 感谢所有提供帮助的人。 我还不能放弃评分,因为我还没有达到 15 级。 所以我给你发了一封感谢信。

项目完成


您可以解析文本文件(如其他人建议的那样),如果您问我,这会减少不必要的复杂性,或者您可以使用更适合编程的数据格式。我建议使用 json 或 yaml,无论哪个适合你。

如果您使用 json,则可以执行以下操作:-

# rename gas.txt to gas.json
{
    "hydrogen": 1,
    "helium": 2,
    "lithium": 3
}

# in your code
import json
file = open('gas.json')
elements = json.loads(file.read())
print(elements['helium'])
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将带有变量的文本文件导入python 的相关文章

随机推荐

  • 如何通过 pyinstaller 安装带有 tkcalendar 模块的 python 应用程序?

    我正在尝试使用 tkcalendar 在 Windows 上使用 pyinstaller 安装 python 应用程序 应用程序正在运行 但 tkcalendar Calendar 不运行 当我在没有安装的情况下运行应用程序时 一切正常 但
  • 旋转文本的行为很奇怪

    I d like to achieve the following 但它的几处伤口正在流血 无法关闭 div1 to top 无法提供动态大小 值 div2 所以像h3 and h4 到目前为止我能做什么 http jsbin com iv
  • 无法在类中实例化通用数据类型

    我有一个不可变的类 具有以下布局 public final class A
  • 如何使用 quazip 压缩目录/文件夹?

    我有一个目录 其中包含我想要压缩的文件和文件夹 我正在使用 qt project quazip 所以我想我写一个函数来打包目录的所有内容 包括文件结构 如何在 zip 文件中创建文件夹 我尝试使用 QuaZipNewInfo 但无法使其工作
  • C#“共享指针”用于替代内存管理?

    我正在寻找一种在 C 中执行此操作的方法 Asker 对象将向 Giver 对象询问 Resource 对象 当被询问时 给予者将在其词典中搜索现有的匹配资源 如果找到 它将返回资源的引用 否则 它将根据数据库数据创建一个新的资源 将该引用
  • jQuery Mobile 不在动态复选框上应用样式并且无法单击

    我试图刷新在菜单选项卡页脚单击时附加在字段集标记中的复选框数量 第一次选项卡访问没问题 但此后 所有复选框都无法再选中 我已经多次修改我的代码 但它不起作用 有时可以检查它们但不应用样式 有时无法检查它们 但应用了样式 我努力了 contr
  • 为什么现实世界中我们需要 Deque 数据结构? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 谁能给我举一个情况的例子Deque https en wikipedia org wiki Double ended queue需要数
  • Silverlight-Facebook 应用程序的服务器接口单元测试

    我有一个 Silverlight 4 客户端在 Google App Engine 上托管的 Facebook 页面上运行 它正在使用gminifb http blog patrickcrosby com 2008 04 20 Write
  • 如何通过 OAuth2 从 vKontakte (VK) 获取访问令牌?

    我正在尝试通过 vKontakte 俄罗斯社交网络 获取访问令牌他们的 OAuth2 API https vk com dev auth mobile 这就是我拨打电话的方式 https oauth vk com authorize cli
  • 录音应用程序的 iOS 多任务处理

    我正在编写一个录制音频的应用程序 我正在研究在录音时支持多任务处理 在后台 的可行性 答案似乎是一个no根据我到目前为止所读到的内容 特别是因为该程序旨在释放切换时正在使用的任何系统资源 所以我想知道 是否可以让用户切换到 iOS 中的另一
  • 我的网络应用程序仅适用于 META-INF 而不是 WEB-INF(包括 beans.xml)。为什么?

    我正在研究 java 中的依赖注入示例 大多数文档都强调我必须放置一个空的beans xml in META INF 如果是 jar 应用程序 WEB INF 如果是 Web 应用程序 所以 我使用战争类型的包装 但是 我的应用程序只有在我
  • jQuery 模糊和 Enter 键

    我正在尝试根据输入的邮政编码使用谷歌地图动态更新 div 如果用户按 Tab 键离开输入框 id ZipCode 则它工作正常 但如果他们按 Enter 键 则不会模糊该字段 我在 onkeyup 上有一个变体 但一个事件调用另一个事件 结
  • 如何在android库中包含内部jar文件

    我正在尝试下载并运行现有的 android studio 项目 目前我收到错误 error package com google gson does not exist 需要gson的java文件位于主应用程序部分 这gson 2 8 1
  • 无法在 Eclipse 中对空手道模板项目运行 mvn 测试

    我克隆了空手道模板 即https github com karatelabs karate template https github com karatelabs karate template我能够在 Eclipse IDE 上运行测试
  • 当我在 C++ 中对未初始化的指针调用“delete”时会发生什么?

    假设我声明了一个 char 指针 并在没有调用 new 的情况下调用了它的 delete 这会导致问题吗 char myptr if condition do something involving myptr new char SIZE
  • 教义查询崩溃

    非常非常奇怪 我已经使用这种教义方法数百次了 我有一个简单的控制器 它以 id 作为参数 Doctrine 生成的查询是错误的并且崩溃 Security has role ROLE ADMIN return Response public
  • 是否可以在 SOAP Web 服务中创建只读元素?

    我有一个定义了只读属性的类 在我的代码中 我将其定义为仅具有 getter 的属性 我希望能够通过网络服务来回发送该对象 当我在服务中调用 Get 方法时 它将在服务端填充一个值 定义此属性后 我不希望 Web 服务的使用者能够设置 更改此
  • 什么是了解 ASP.NET 中的 web.config 的好资源?

    我修改 web config 当我HAVE TO 调试设置 会话状态设置等 但在这些情况下 一些教程或错误消息已经明确 打开 web config 并执行 XYZ 我想知道的是 它还能做什么 我现在以其他方式做的事情最好在 web conf
  • 使用NotificationListenerService检查对通知的访问

    我正在使用 gt 4 3NotificationListenerService访问通知 第一次启动时 我的应用程序会将用户带到 访问通知 系统面板 但只要禁用 访问通知 中我的应用程序的复选框 我就想将用户带到那里 我还没有找到isNoti
  • 将带有变量的文本文件导入python

    我的目标 我创建的程序的目的是让用户输入元素的名称 然后 python 读入一个外部文件 找到所请求元素分配的值 最后将该值打印出来 例如 gt gt gt helium 2 问题是我不知道如何让 python 解释如下所示的文本文件 hy