Python 从字典中写入 JSON 临时文件

2023-12-22

我正在开发一个 python(3.6) 项目,在该项目中我需要从 Python 字典编写 JSON 文件。

这是我的字典:

{'deployment_name': 'sec_deployment', 'credentials': {'type': 'type1', 'project_id': 'id_001',}, 'project_name': 'Brain', 'project_id': 'brain-183103', 'cluster_name': 'numpy', 'zone_region': 'europe-west1-d', 'services': 'Single', 'configuration': '', 'routing': ''}

我需要写credentialsJSON 文件的密钥。

这是我尝试过的方法:

tempdir = tempfile.mkdtemp()
saved_umask = os.umask(0o077)
path = os.path.join(tempdir)
cred_data = data['credentials']
with open(path + '/cred.json', 'a') as cred:
    cred.write(cred_data)
credentials = prepare_credentials(path + '/cred.json')
print(credentials)
os.umask(saved_umask)
shutil.rmtree(tempdir)

它不是编写 JSON 格式的文件,那么生成的文件如下:

{
  'type': 'type1',
  'project_id': 'id_001',
}

它带有单引号而不是双引号。


实际上这应该是更Python 3 原生的方法。

import json,tempfile
config = {"A":[1,2], "B":"Super"}
tfile = tempfile.NamedTemporaryFile(mode="w+")
json.dump(config, tfile)
tfile.flush()
print(tfile.name)

分解一下:

  • We load tempfile,并确保有一个名称NamedTemporaryFile
  • 我们将字典转储为json file
  • 我们确保它已被写入viaflush()
  • 最后我们可以抓取名字来查看一下

请注意,我们可以将文件保留更长时间delete=False当呼叫NamedTemporaryFile

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

Python 从字典中写入 JSON 临时文件 的相关文章

随机推荐

  • 使用canvas2svg.js将chart.js图表​​导出到svg

    我正在尝试导出chart js http www chartjs org 使用图表转为 svgcanvas2svg js https gliffy github io canvas2svg 它似乎不起作用 因为 Chart js 拒绝使用由
  • php - 获取最后修改的目录

    对此有点困惑 希望得到一些帮助 我正在尝试从字符串中的路径获取最后修改的目录 我知道有一个函数叫做 is dir http php net manual en function is dir php 我做了一些研究 但似乎没有任何效果 我没
  • jQuery Mobile 警报/确认对话框

    是否有一个类似于 Sencha 的 jQuery Mobile 警报和确认对话框解决方案 是的 这个插件很好 但是 如果您不需要完整的功能 那么滚动您自己的简单对话框的重量仍然要轻得多 我用这个 div div h3 class sure
  • 向 Jquery 中的元素添加自定义属性

    我正在尝试使用 jquery 在我的元素上添加自定义属性 map areas div rand numElements each function this attr element id 4 但最终 我的元素没有 element id 属
  • “HOSTCC”和 ./configure --host 中“主机”一词的含义是什么?

    假设我有某个程序的源代码 该源代码使用 GNU 自动工具 为了简单起见 假设该程序绝不是任何类型的开发工具 如果我有一个方便的交叉工具链 我可以configure针对平台进行交叉编译fooproc barvendor bazos使用 hos
  • 更改图表颜色

    我测试了这个 css 代码来更改图表颜色 但是当我运行代码时 我得到了 NPE public class MainApp extends Application Override public void start Stage stage
  • 使用 PHP 检查 mms 流是否存在

    我正在尝试编写一个 php 脚本来测试 mms 流是否存在 我无法使用 php 函数 例如 socket connect fopen fsockopen etc 来做到这一点 我已经在网上搜索了几个小时 并在其他论坛中发现了类似的问题 但没
  • 无法确定标记“?attr/colorSurface”的类型

    我在运行 Android 应用程序时遇到问题 Can t determine type for tag
  • 在EmacsW32 和cygwin 中使用tramp 可能吗?

    我在使用 Emacs W32 和 cygwin 设置 Trampoline 时遇到一些问题 我已将 emacs 配置为使用 cygwin 作为使用 w32 shell 的 shell 我还将 HOME 环境变量设置为 c cygwin ho
  • 如何在 DynamoDB 中以编程方式查询范围键

    如何在 DynamoDB 中以编程方式查询范围键 我正在使用 Net AWSSDK 我可以使用以下代码查询哈希键 GetItemRequest request new GetItemRequest TableName tableName r
  • 使用多个故事板进行状态恢复

    我正在开发一个具有多个故事板的项目 我想在这个项目中实现状态恢复 我在将第二个故事板上的 ViewController 链接到状态恢复过程时遇到问题 encodeRestorableStateWithCoder decodeRestorab
  • PropertyGrid 控件和下拉列表

    我想创建一个下拉列表作为属性的编辑器 如果我只有字符串作为下拉列表的条目 那么这会很好地工作 使用 StringConverter 但是 当我尝试使用对象列表而不是字符串时 这将不起作用 但请注意它如何适用于普通组合框 这是我的代码 pub
  • iOS:有没有办法通过将所有内容变灰来使视图控制器看起来不活动?

    我希望我的 ViewController 和每个对象都显示为不活动状态 将其全部变灰 有点像 UIAlertView 弹出窗口将背景中的所有内容变灰 我不想手动将每个对象变灰 有没有一种简单的方法可以完成这项工作 UIView grayVi
  • 无法在 Windows 上使用 jar 命令

    jar 命令在我的盒子上不起作用 我已经下载了 jdk 并将 envar Path 设置为包含 jdk bin 目录的路径 然而 我仍然收到那条烦人的消息 jar 不被识别为内部或外部命令 可操作程序或批处理文件 有人有解决这个问题的建议吗
  • 如何使用另一个仅包含项目的列表来对项目:值列表进行子集化?

    我有 2 个清单 一个是单词及其频率列表 另一个是单词列表 a country 3478 island 2900 river 5 b river mountain bank a 中有数千个条目 但 b 中只有数百个条目 我如何子集列出 a
  • Spring Boot Tomcat Jackson中如何防止flushBuffer上的并发锁?

    当我从部署到 Tomcat 8 的 Spring Boot WAR 应用程序中编写 JSON 时 我遇到了并发问题 在 AppDynamics 的屏幕截图中 当 jackson 库执行 flushBuffer 时 似乎需要等待相当长的时间
  • iPad 上的 HTML5 视频 CSS 背景颜色

    目前是否可以有效设置 HTML5 视频元素的背景颜色 关于 HTML5 音频和视频 http developer apple com library safari documentation AudioVideo Conceptual Us
  • iOS 汇编代码

    我想在苹果 iOS 上尝试一些 ARM 汇编代码 只是出于教育目的 我想从 Xcode 中的一些内联代码开始 我的理解是 我需要为 iOS 设备进行编译 例如我的 iPhone 这意味着我需要每年支付 99 美元的会员费 我不认为我可以在
  • 如何使用 .Net 反射按名称搜索属性(忽略大小写)?

    我有以下代码行片段 用于按名称搜索实例的属性 var prop Backend GetType GetProperty fieldName 现在我想忽略 fieldName 的大小写 所以我尝试了以下方法 var prop Backend
  • Python 从字典中写入 JSON 临时文件

    我正在开发一个 python 3 6 项目 在该项目中我需要从 Python 字典编写 JSON 文件 这是我的字典 deployment name sec deployment credentials type type1 project