如何在python中解码Json并进行迭代


How to decode Json in python and iterate

我是python的新手,我正在向python发送一个php json编码数组喜欢这个:

$myArray = array(1,5,8,6);
$jsonArray = json_encode($myArray);
exec("python ".$absPath."/myPythonFile.py $absPath $parm $jsonArray",$out);

这是python代码:

from pydfs_lineup_optimizer import *
import sys
import json
optimizer = LineupOptimizer(FanDuelBasketballSettings)
optimizer.load_players_from_CSV("test_new.json")
try:
    players_that_you_want = []
    for number in sys.argv[3]:
        print number
    lineups = optimizer.optimize()
    for l in lineups:
        print(l)
except LineupOptimizerException as e:
    print(e)

当我尝试在python文件内打印number变量时,python是这样返回的:

[
1
,
5
,
8
,
6
]

我想要这样:

1
5
8
6

知道我做错了什么吗?

参数是作为字符串发送的,因此您实际上并没有通过循环将其拆分为正确的值。您可以尝试去掉方括号并使用 split(',') .

input = "[1,2,3,4]"
processed_input = input.strip('[]').split(',')

上面的代码将完成这项工作。

这是我们需要做的:

from pydfs_lineup_optimizer import *
import sys
import json
optimizer = LineupOptimizer(FanDuelBasketballSettings)
optimizer.load_players_from_CSV("test_new.json")
try:
    players_that_you_want = []
    for number in json.loads(sys.argv[3]):
        print number
    lineups = optimizer.optimize()
    for l in lineups:
        print(l)
except LineupOptimizerException as e:
    print(e)