-2
私は非常に大きなJSONファイルを持っています。数千ものシミュレートされたバスケットボールゲームがあります。私は最終的にcsvにそれらを引き出すことができるようにしたいと思いますが、今私がしたいのは、配列を文字列として取得することだけです。JSONから「Player」「Stats」を取り出し
コードはコンパイルされていますが、実行していないようですが、stats = []私は統計情報を空に書き込むように定義しています。ここで
は私のプログラムは、これまでのところです:
"value": 64.8,
"valueNoPot": 72,
"valueFuzz": 64.8,
"valueNoPotFuzz": 72,
"valueWithContract": 64.8,
"pid": 1,
"imgURL": "",
"firstName": "Chris",
"lastName": "Bosh",
"diedYear": null,
"stats": [
{
"pid": 1,
"season": 2015,
"tid": 27,
"playoffs": false,
"gp": 0,
"gs": 0,
"min": 0,
"fg": 0,
"fga": 0,
"fgAtRim": 0,
"fgaAtRim": 0,
"fgLowPost": 0,
"fgaLowPost": 0,
"fgMidRange": 0,
"fgaMidRange": 0,
"tp": 0,
"tpa": 0,
"ft": 0,
"fta": 0,
"pm": 0,
"orb": 0,
"drb": 0,
"trb": 0,
"ast": 0,
"tov": 0,
"stl": 0,
"blk": 0,
"ba": 0,
"pf": 0,
"pts": 0,
"per": 0,
"ewa": 0,
"yearsWithTeam": 1,
"psid": 0
}
]
:ここ
import os
#create path for file
path = os.path.dirname('C:\\tmp\\Season3Playoffs.json')
#create list for stats for each player
stat = []
#open file
for filename in os.listdir(path):
with open(os.path.join(path, filename), encoding = "UTF-8") as input_file:
#go through each line of the file
for line in input_file:
#if a line has "pid" copy contents to the list stat until "psid" is encountered
if line in ('"pid"', '"psid"'):
stat.append(line.rstrip('\n'))
#print the stat entry
print(stat)
print("program complete")
は、JSONファイルのセクションは、私は、リストの各要素に保存したいと思っているように見えるものの一例です
そのコードから、 "pid:x"と "psid:"の間のテキストをstat [x]に保存します。
私はなぜそれが配列に書き込まれていないか分からない、どんな助けも大歓迎です!
[jsonモジュール](https://docs.python.org/2/library/json.html)を使用しない理由はありますか? – asongtoruin
私は初心者で、モジュールについて知りません。基本的なPythonスキルを向上させることも考えています。 –