【问题标题】:How to read data from a .yaml file in Google Colab如何从 Google Colab 中的 .yaml 文件中读取数据
【发布时间】:2020-07-17 13:22:49
【问题描述】:

我正在尝试从本地计算机上的.yaml 文件中读取数据。但是,当我导入文件并打印数据时,它只有一行。输出截图供参考:

但是,我能够使用 Jupiter notebook 以所需的字典格式成功读取数据。截图供参考在这里

如何在 Colab 中逐行读取字典格式的数据?

【问题讨论】:

    标签: python-3.x dictionary yaml google-colaboratory


    【解决方案1】:

    根据the docs

    files.upload 返回上传文件的字典。

    所以你需要这样做

    uploaded = files.upload()
    for key, value in uploaded.items():
      data = yaml.load(value)
      print(key)  # prints the file name
      print(data) # prints the loaded data
    

    【讨论】:

    • 谢谢,这成功了!但是,打印“数据”的整个输出仍然显示在一行中,因此难以理解。有没有办法在字典中的每个“,”值上加上一个“/n”?类似于主要问题中附加的 Jupyter 屏幕截图?
    • 我真的不知道Jupyter是如何实现的,显然这不是Python的print()的默认行为。它们要么替换打印功能,要么对其输出进行后处理,这些都不能简单地重现。既然你都在使用 YAML,那你为什么不print(yaml.dump(data))
    • 你是对的。只是print(yaml.dump(data))产生了一个字符串,所以不能用作dict。但这确实有助于更好地理解数据。再次感谢:)
    • 打印后,还是可以用data作为dict,我不太明白你在说什么。
    【解决方案2】:

    试试这个

    data = yaml.load(data["ipl_match.yaml"])
    

    【讨论】:

    • 谢谢,这也有效!但是,打印“数据”的整个输出仍然显示在一行中,因此难以理解。有没有办法在字典中的每个“,”值上加上一个“/n”?类似于主要问题中附加的 Jupyter 屏幕截图?
    • 此代码将呈现带有可折叠标题的 json。 gist.github.com/korakot/072f1ea70d3c3267ff2c64b61d78c89c
    • 我会检查的!谢谢你:)
    猜你喜欢
    • 2020-09-17
    • 2021-07-02
    • 2021-09-27
    • 1970-01-01
    • 2021-08-14
    • 2020-07-05
    • 2020-08-26
    • 2018-06-28
    • 2018-08-22
    相关资源
    最近更新 更多