首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Python无法从有效的yaml解析对象列表

Python无法从有效的yaml解析对象列表
EN

Stack Overflow用户
提问于 2015-12-10 16:54:48
回答 1查看 35关注 0票数 0

我有yaml配置:

代码语言:javascript
代码运行次数:0
运行
复制
base: /tmp
tasks: 
  - 
    drop: true
    dump_src: "some string here"
    dump_ts: "some string here"
    region: ME
  - 
    dump_src: "some string here"
    dump_ts: "some string here"
    region: RU

它通过了http://yaml-online-parser.appspot.com/http://www.yamllint.com/验证

但当我尝试时:

代码语言:javascript
代码运行次数:0
运行
复制
import yaml

if __name__ == "__main__":
    stream = open(sys.argv[0], 'r')
    docs = yaml.load_all(stream)
    for doc in docs:
        print doc

我有一个错误:

代码语言:javascript
代码运行次数:0
运行
复制
yaml.scanner.ScannerError: mapping values are not allowed here
  in "/opt/projects/nextgis/gazetteer-update/gup-web.py", line 7, column 40
EN

回答 1

Stack Overflow用户

发布于 2015-12-10 17:07:52

找到了我的错误:

代码语言:javascript
代码运行次数:0
运行
复制
stream = open(sys.argv[0], 'r')

sys.argv[0]本身就是python脚本,所以我尝试解析的是脚本,而不是yaml配置。

正确的arg值在索引1下:

代码语言:javascript
代码运行次数:0
运行
复制
stream = open(sys.argv[1], 'r')
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34197404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档