小编Ant*_*hon的帖子

如何在python yaml文件中输出空白值

我正在写这样的yaml文件

with open(fname, "w") as f:
     yaml.safe_dump({'allow':'', 'deny': ''}, f,
                    default_flow_style=False, width=50, indent=4)
Run Code Online (Sandbox Code Playgroud)

输出:

allow: ''
Run Code Online (Sandbox Code Playgroud)

我想输出为

allow:
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

python yaml pyyaml

6
推荐指数
4
解决办法
1万
查看次数

创建虚拟设备出现错误“皮肤目录未指向有效皮肤”

我的 SDK 工具版本为 24.2,SDK 为 Android 4.4W.2 (API 20)。

我使用 Android Virtual Device (AVD) 来模拟 Android Wear 设备。但出现错误“皮肤目录未指向有效皮肤”

sdk android skin android-virtual-device

6
推荐指数
3
解决办法
5255
查看次数

动态添加文本框无法正常工作

这非常令人沮丧.我的代码工作正常,直到上周.当用户更改[使用]下拉选择中的值时,我将多个文本框添加到我的HTML页面change().

这是HTML代码段:

<div id="files" class="control-group">
    <label class="control-label">No. of files</label>
    <div class="controls" >
        <select id="files" name="files" class="span3">
            <option value="">--Select Option--</option>
            <?php for($i=1;$i<21;$i++){ ?>
                <option value="<?php echo $i ?>"><?php echo $i ?></option> <?php } ?>
        </select>
    </div>
</div>
<div class="control-group" id="titles">
    <label class="control-label">File Titles</label>
    <div class="controls" id="titleAdd"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

这是我的Javascript/jQuery:

$(document).ready(function(){
        $("#titles").hide();
    });
    var container;
    // Add & Remove textboxes 
    $("#files").change(function(){

        //Remove all textboxes
        $("#titles").show();
        $(container).empty(); 
        $(container).remove();  
        //"DIV" ELEMENT AND DESIGN IT USING JQUERY ".css()" …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery

6
推荐指数
1
解决办法
1110
查看次数

转储已解析的文档时是否可以保留YAML块结构?

我们使用PyYAML为不同的环境准备配置文件.但是我们的YAML阻止了完整性.

input.yml......

pubkey: |
    -----BEGIN PUBLIC KEY-----
    MIGfMA0GCSq7OPxRrQEBAQUAA4GNADCBiQKBgQCvRVUKp6pr4qBEnE9lviuyfiNq
    QtG/OCyBDXL4Bh3FmUzfNI+Z4Bh3FmUx+z2n0FCv/4BpgHTDl8D95NPopWVo1RH2
    UfhyMd6dQ/x9T5m+y38JMzmSVAk+Fqu8ya18+yQVOEyEIx3Gxpsgegow33gcxfjK
    EsUgJHXcpw7OPxRrCQIDAQAB
    -----END PUBLIC KEY-----
Run Code Online (Sandbox Code Playgroud)

...使用python3执行此程序...

import yaml

with open('input.yml', mode='r') as f:
    parsed = yaml.safe_load(f)

with open('output.yml', mode='w') as f:
    yaml.dump(parsed, f)
Run Code Online (Sandbox Code Playgroud)

......产生这个output.yml......

pubkey: '-----BEGIN PUBLIC KEY-----

    MIGfMA0GCSq7OPxRrQEBAQUAA4GNADCBiQKBgQCvRVUKp6pr4qBEnE9lviuyfiNq

    QtG/OCyBDXL4Bh3FmUzfNI+Z4Bh3FmUx+z2n0FCv/4BpgHTDl8D95NPopWVo1RH2

    UfhyMd6dQ/x9T5m+y38JMzmSVAk+Fqu8ya18+yQVOEyEIx3Gxpsgegow33gcxfjK

    EsUgJHXcpw7OPxRrCQIDAQAB

    -----END PUBLIC KEY-----

    '
Run Code Online (Sandbox Code Playgroud)

是否可以使用PyYAML保留块的结构?

python yaml pyyaml python-3.x

6
推荐指数
1
解决办法
1397
查看次数

保留引号,并在Ruamel中添加带引号的数据

我正在使用Ruamel来保留人工编辑的YAML文件中的引用样式.

我有示例输入数据:

---
a: '1'
b: "2"
c: 3
Run Code Online (Sandbox Code Playgroud)

我使用以下方法读取数据:

def read_file(f):
    with open(f, 'r') as _f:
        return ruamel.yaml.round_trip_load(_f.read(), preserve_quotes=True)
Run Code Online (Sandbox Code Playgroud)

然后我编辑该数据:

data = read_file('in.yaml')
data['foo'] = 'bar'
Run Code Online (Sandbox Code Playgroud)

我使用以下方法写回磁盘:

def write_file(f, data):
    with open(f, 'w') as _f:
        _f.write(ruamel.yaml.dump(data, Dumper=ruamel.yaml.RoundTripDumper, width=1024))

write_file('out.yaml', data)
Run Code Online (Sandbox Code Playgroud)

输出文件是:

a: '1'
b: "2"
c: 3
foo: bar
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以强制引用字符串'bar',而不会在整个文件的其余部分强制执行引用样式?

(另外,我可以阻止它删除三个破折号---吗?)

python ruamel.yaml

6
推荐指数
2
解决办法
2654
查看次数

在Swagger中,如何指定多个主机?

我可以使用多个主机,例如:

host1: petstore.test.com
host2: petstore1.test.com
host3: petstore2.dev.com
Run Code Online (Sandbox Code Playgroud)

现在我的YAML文件只有一个主机URL.

例如:

host: petstore.test.com
basePath: /
Run Code Online (Sandbox Code Playgroud)

swagger

6
推荐指数
1
解决办法
7278
查看次数

通过ruamel.yaml转储时如何在yaml文件中保留空值

我有YAML文件site.yaml

Kvm_BLOCK:
  ip_address: 10.X.X.X
  property: null
  server_type: zone
Run Code Online (Sandbox Code Playgroud)

加载然后转储为:

ruamel.yaml.dump(site_yaml, new_file, Dumper=ruamel.yaml.RoundTripDumper)
Run Code Online (Sandbox Code Playgroud)

它成为了

Kvm_BLOCK:
      ip_address: 10.X.X.X
      property: 
      server_type: zone
Run Code Online (Sandbox Code Playgroud)

如何null在属性块中保留此值

python yaml pyyaml ruamel.yaml

6
推荐指数
1
解决办法
1809
查看次数

将YAML转换为JSON时出错,未找到预期的密钥kubernetes

我正在做一个关于Google Cloud中的kubernetes的实验室。
我已经创建了YAML文件,但是当我尝试部署它时,shell显示了此错误:

将YAML转换为JSON时出错:yaml:第34行:找不到预期的密钥

YAML文件:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
  labels:
    app: nginx
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
    spec:
      volumes:
      - name: nginx-config
        configMap:
          name: nginx-config
      - name: php-config
        configMap:
          name: php-config
      containers:
      - image: php-fpm:7.2
        name: php
        ports:
        - containerPort: 9000
        volumeMounts:
        - name: persistent-storage
          mountPath: /var/www/data
        - name: php-config
          mountPath: /usr/local/etc/php-fpm.d/www.conf
          subPath: www.conf
      - image: nginx:latest
        name: nginx
        - containerPort: 80
        volumeMounts:
        - name: persistent-storage
          mountPath: /var/www/data
        - name: nginx-config
          mountPath: /etc/nginx/nginx.conf
          subPath: nginx.conf …
Run Code Online (Sandbox Code Playgroud)

yaml kubernetes

6
推荐指数
4
解决办法
1万
查看次数

使用 Shell 搜索并替换 YAML 中的字符串值

我有 YAML 查找值并将其替换为正确的 YAML 格式(带空格和引号)。在示例 YAML 下,我可以使用下面的 Sed 命令替换 jdbcUrl 值。但是,需要帮助如何使用 Sed 为值添加空格前缀和引号。下面Sed将查找并替换所需的jdbcUrl。但是,它不会添加空格前缀(YAML 标准)并添加值的引号。

查找和替换 URL 的脚本:

DB_URL='jdbc:mysql://localhost:3306/sd?autoReconnect=true'
sed -i -e 's, MYDATABASE,'$DB_URL',g' input.yaml
Run Code Online (Sandbox Code Playgroud)

输入 Yaml 示例:

- name: AP_DB
      description: "datasource"
      jndiConfig:
        name: jdbc/AP_DB
      definition:
        type: RDBMS
        configuration:
          jdbcUrl: MYDATABASE
          username: username
          password: password
          driverClassName: com.mysql.jdbc.Driver
Run Code Online (Sandbox Code Playgroud)

所需的输出 Yaml:

- name: AP_DB
      description: "datasource"
      jndiConfig:
        name: jdbc/AP_DB
      definition:
        type: RDBMS
        configuration:
          jdbcUrl: 'jdbc:mysql://localhost:3306/sd?autoReconnect=true'
          username: username
          password: password
          driverClassName: com.mysql.jdbc.Driver
Run Code Online (Sandbox Code Playgroud)

yaml sed substitution

6
推荐指数
2
解决办法
3万
查看次数

YAML 中 AWS Cloudformation 模板中的 `Ref: logicalName` 和 `!Ref logicalName` 之间有什么区别?

YAML 中的 AWS Cloudformation 模板Ref:和其中的区别是什么!Ref

根据AWS docsRef: logicalName是“完整函数名称的!Ref logicalName语法”和“短格式的语法”。完整的函数名称和缩写形式在功能上是否存在差异。我可以只使用 或 吗?

amazon-web-services aws-cloudformation

6
推荐指数
1
解决办法
538
查看次数