小编Kar*_*hik的帖子

Python JSON 添加键值对

我正在尝试将键值对添加到现有的 JSON 文件中。我可以连接到父标签,如何为子项添加值?

JSON 文件:

{
  "students": [
    {
      "name": "Hendrick"
    },
    {
      "name": "Mikey"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

代码:

import json

with open("input.json") as json_file:
    json_decoded = json.load(json_file)

json_decoded['country'] = 'UK'

with open("output.json", 'w') as json_file:
    for d in json_decoded[students]:
        json.dump(json_decoded, json_file)
Run Code Online (Sandbox Code Playgroud)

预期成绩:

{
  "students": [
    {
      "name": "Hendrick",
      "country": "UK"
    },
    {
      "name": "Mikey",
      "country": "UK"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

python arrays json python-2.7 python-3.x

2
推荐指数
1
解决办法
9078
查看次数

以正则表达式(IP地址)开头的Awk打印行

我试图读取第一行具有IP地址的那些行的文件。

我下面的命令不返回任何值。

cat test.csv | awk '$1 == "^[[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}]" { print $0 }'
Run Code Online (Sandbox Code Playgroud)

正则表达式可以捕获IP地址。

也尝试了以下内容

cat test_1.csv | awk '$1~/^[[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\]/ {print $0}'
Run Code Online (Sandbox Code Playgroud)

test.csv

1.1.1.1 ipaddress gateway
2.2.2.2 ipaddress_2 firewall
www.google.com domain google
Run Code Online (Sandbox Code Playgroud)

linux bash shell awk sed

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

Bash脚本以json格式打印输出

我正在尝试卷曲网页并对其进行一些处理,最后我尝试以json格式打印.(实际上需要在mongodb输入中)

所以输入(通过卷曲读取)是

输入:

brendan google engineer
stones microsoft chief_engineer
david facebook tester
Run Code Online (Sandbox Code Playgroud)

对于那种处理,我将值赋给变量($ name,$ emloyer,$ designation)

转换为json的最终命令是,

echo [{\"Name\":\"$name\"},{\"Employer\":\"$employer\"},{\"dDesignation\":\"$designation\"}]
Run Code Online (Sandbox Code Playgroud)

目前的输出是,

[{"Name":"brendan","Employer":"google","Designation":"engineer"}]
[{"Name":"stones","Employer":"microsoft","Designation":"chief_engineer"}]
[{"Name":"david","Employer":"facebook","Designation":"tester"}]
Run Code Online (Sandbox Code Playgroud)

但是,我希望在开头和结尾用逗号和方括号分隔的同一行中的输出(不是在每一行)

预期产量:

  [{"Name":"brendan","Employer":"google","Designation":"engineer"},{"Name":"stones","Employer":"microsoft","Designation":"chief_engineer"},
    {"Name":"david","Employer":"facebook","Designation":"tester"}]
Run Code Online (Sandbox Code Playgroud)

有什么建议.

linux bash shell awk sed

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

标签 统计

awk ×2

bash ×2

linux ×2

sed ×2

shell ×2

arrays ×1

json ×1

python ×1

python-2.7 ×1

python-3.x ×1