我有一个bash脚本,它为多次迭代构建了一个字典式的结构,如下所示:
{ "a":"b", "c":"d", "e":"f"}
{ "a1":"b1", "c1":"d1", "e1":"f1", "g1":"h1" }我已经将它们都附加到shell脚本中的数组中,它们将作为python脚本的输入输入,我希望上面的数据作为字典列表进行解析。
我试过这样的方法,但没有起作用。
var=({ "a":"b", "c":"d", "e":"f"} { "a1":"b1", "c1":"d1", "e1":"f1", "g1":"h1" })
function plot_graph {
RESULT="$1" python - <<END
from __future__ import print_function
import pygal
import os
import sys
def main():
result = os.getenv('RESULT')
print(result)
if __name__ == "__main__":
main()
END
}
plot_graph ${var[@]}参数正在被拆分,它们不会被视为单个变量。
Out of result will be :[ {"a":"b", ] 其中,我希望将整个变量值作为字符串读取,然后我可以将其拆分成多个字典。
请帮我克服这一点。
发布于 2016-08-16 17:33:21
似乎是plot_graph $var的问题
下面的代码应该可以工作:
var="({ 'a':'b', 'c':'d', 'e':'f'} { 'a1':'b1', 'c1':'d1', 'e1':'f1', 'g1':'h1' })"
echo $var
function plot_graph {
echo $1
RESULT="$1" python - <<END
from __future__ import print_function
import os
import sys
def main():
result = os.getenv('RESULT')
print(result)
if __name__ == "__main__":
main()
END
}
plot_graph "$var"发布于 2016-08-16 17:55:36
如果我理解得很好,您想要一个包含所有键的连接字典。请参阅how to concatenate two dictionaries to create a new one in Python?
https://stackoverflow.com/questions/38970840
复制相似问题