yaml文件读取,读取配置文件

  yaml文件读取,读取配置文件

  一、yaml文件基本语法格式文件其实也是一种配置文件类型,相比较ini,conf,py配置文件来说,更加的简洁,操作也更加简单,同时可以存放不同类型的数据,不会改变原有数据类型,所有的数据类型在读取时都会原样输出

  安装:

  点安装pyyaml1 .列表列表类型书写主要是-和空格的结合,不同的缩进表示层级,如下:

  - 1

  - 2

  - 3

  - 4

  - # 嵌套列表的话就一个-加一个空格

  - 5 #

  -

  -

  -

  - 6 # 这表示嵌套两层列表

  - 7

  -

  -

  -编号:11 #列表套字典

  名称:22

  比如:33

  #结果:[1, 2 , 3 - 4 ,[5, ],[[6,7,无]],无,{id: 11, name: 22, like: 33}]列表语法

  2.字典列表类型书写语法主要是冒号,不同的缩进表示层级,如下:

  dic1: 1

  驾驶员信息中心2:“2”

  驾驶员信息中心3:[666777888]#也支持列表

  dic4: {11:22, 22:33} #支持字典

  字典5: #字典嵌套

  名称: xx

  密码:“oo”

  喜欢:#字典套列表

  女孩

  用于各种贬义的词语中作为强调成分

  - xxoo: ooxx #再嵌套列表

  ooxx: xxoo

  #{dic1: 1,

  #dic2: 2 ,

  #dic3: [666,777,888],

  #dic4: {11: 22, 22: 33},

  #dict5: {name: xx , pwd: oo , like: [girl , ball ,{xxoo: ooxx , ooxx: xxoo}]}

  #}字典语法

  3.元祖元祖语法和列表一样,只是加了个声明:

  !python/tuple #列表转成元组声明语法

  -名字

  表示"作用"

  -班级

  # (1, 2, 3)4.多组数据多组数据的分隔语法是-

  - !python/tuple #列表转成元组声明语法

  -名字

  表示"作用"

  -班级

  -

  名称:111

  年龄:222岁

  -

  - 1

  - 2

  # 读取出来是个生成器对象,需要迭代取值

  #(姓名,年龄,类别)

  #{ 姓名:111,年龄:222}

  #[1, 2]二、yaml文件的读写1.读取单组数据导入yaml #pip安装pyyaml

  with open(_tuple.yaml ,encoding=utf-8) as f:

  # res=yaml.load(f,Loader=yaml .满载)

  res=yaml.full_load(f) #上面的简便写法

  打印(分辨率)

  打印(类型(分辨率))

  对于表示留数中的行:

  打印(行)2。读取多组数据导入yaml #pip安装pyyaml

  with open(_tuple.yaml ,encoding=utf-8) as f:

  res=yaml.load_all(f,Loader=yaml .满载)

  res=yaml.full_load_all(f) #上面的简便写法,返回的是一个生成器对象,需要迭代取值

  打印(分辨率)

  打印(类型(分辨率))

  对于表示留数中的行:

  打印(第3行)。写单组数据

  响应={

  状态:1,

  代码: 1001 ,

  数据:[

  {

  id: 80,

  regname: toml ,

  “QW @JBK!# #($*@HLNN ,

  手机: 13691579846 ,

  leavemount: 0.00 ,

  类型: 1 ,

  regtime: 2019-08-14 20:24:45.0

  },

  {

  id: 81,

  regname: toml ,

  “QW @JBK!# #($*@HLNN ,

  手机: 13691579846 ,

  leavemount: 0.00 ,

  类型: 1 ,

  regtime: 2019-08-14 20:24:45.0

  }

  ],

  消息: 获取用户列表成功

  }响应

  导入格式

  def write_yaml():

  用open(config.yaml ,编码=utf-8 ,模式=w )作为女:

  尝试:

  yaml.dump(data=response,stream=f,allow_unicode=True)

  例外情况为e:

  打印(五)

  write_yaml()

  颂歌:《1001》

  数据:

  -身份证号:80

  离开装载:"0.00"

  手机:"13691579846"

  pwd: QW @JBK!# #($*@HLNN

  regname: toml

  regtime: 2019-08-14 20:24:45.0

  类型:"1"

  -身份证号:81

  离开装载:"0.00"

  手机:"13691579846"

  pwd: QW @JBK!# #($*@HLNN

  regname: toml

  regtime: 2019-08-14 20:24:45.0

  类型:"1"

  消息:获取用户列表成功

  状态:1结果config.yaml

  4.写多组数据

  响应={

  状态:1,

  代码: 1001 ,

  数据:[

  {

  id: 80,

  regname: toml ,

  “QW @JBK!# #($*@HLNN ,

  手机: 13691579846 ,

  leavemount: 0.00 ,

  类型: 1 ,

  regtime: 2019-08-14 20:24:45.0

  },

  {

  id: 81,

  regname: toml ,

  “QW @JBK!# #($*@HLNN ,

  手机: 13691579846 ,

  leavemount: 0.00 ,

  类型: 1 ,

  regtime: 2019-08-14 20:24:45.0

  }

  ],

  消息: 获取用户列表成功

  }

  信息={

  名称: linux超,

  "年龄":18岁

  }要写入的多组数据

  导入格式

  def write_yaml():

  用open(config.yaml ,编码=utf-8 ,模式=w )作为女:

  尝试:

  YAML。dump _ all(documents=[响应,信息],stream=f,allow_unicode=True)

  例外情况为e:

  打印(五)

  write_yaml()

  编写的config.yaml是

  代码:“1001”

  数据:

  -身份证号:80

  离开装载:“0.00”

  手机:“13691579846”

  pwd: QW @JBK!# #($*@HLNN

  regname: toml

  regtime: 2019-08-14 20:24:45.0

  类型:“1”

  -身份证号:81

  离开装载:“0.00”

  手机:“13691579846”

  pwd: QW @JBK!# #($*@HLNN

  regname: toml

  regtime: 2019-08-14 20:24:45.0

  类型:“1”

  消息:成功获取用户列表

  状态:1

  -

  年龄:18岁

  名称:linux超级写结果

  转载请联系作者授权,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: