我是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
任何想法我做错了什么?
答案 0 :(得分:1)
参数是作为一个字符串发送的,所以你实际上并没有用循环将它分成正确的值。您可以尝试使用split(',')
剥离方括号。
input = "[1,2,3,4]"
processed_input = input.strip('[]').split(',')
以上代码将完成这项工作。
答案 1 :(得分:0)
这就是我们需要做的事情:
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)