2016-07-21 5 views
0

Я пытаюсь разобрать несколько файлов, касающихся «Mike's Pies», как вы можете видеть в приведенном ниже коде. Я написал его туда, где я получаю желаемый результат, теперь я хотел бы разобрать все файлы с именем «Пироги Майка»Parsing Несколько файлов .json

import json 
import sys 
import glob 

with open("Mike's Pies.20130201.json") as json_data: 
    data = json.load(json_data) 
#Keep all orders with variable of r 
    for r in data ["orders"]: 

     orderName = r["orderPlacer"]["name"] 
     #Print with address to acquire the housenumber/street/city/state 
     address = r["address"]["houseNumber"] 
     street = r["address"]["street"] 
     city = r["address"]["city"] 
     state = r["address"]["state"] 
     Mikes = "Mike's Pies," 
     output = str(orderName) + ", " + str(address) + " " + str(street) +  
     " " + str(city) + " " + str(state) + ", " + Mikes + " " 



     length = len(r["pizzas"]) 
     for i in range (0,length): 
     #if length >= 1 print r["pizzas"][1]["name"] 
      #if i!=length: 
      pizza = ((r["pizzas"][i]["name"].strip("\n"))).strip(" ") 
      if(i!=length-1): 
       output += pizza + ", " 
      else: 
       output += pizza 

     print(output+"\n") 
+0

Вы хотите сравнить все файлы под названием «Mike's Pies. *. Json»? Таким образом, это не вопрос JSON или данных, вы просто хотите перебирать файлы, соответствующие определенным критериям? Найдите os.listdir() и оттуда. – Fhaab

ответ

1

Похоже, у вас есть код, который работает на "Mike's Pies.20130201.json", и вы хотите запустить что код на каждый файл, который начинается с «Mike's Pies» и заканчивается на «json», независимо от того, какой битподобный бит посередине. Я прав? Вы можете получить все совпадающие имена файлов с glob и проанализировать их один за другим.

for filename in glob.glob("Mike's Pies.*.json"): 
    with open(filename) as json_data: 
     data = json.load(json_data) 
     #etc etc... Insert rest of code here 
+0

Да, у меня возникли проблемы с пониманием функции «glob». Он работает, когда он анализирует все файлы, проблема в том, что я пытаюсь выяснить, как настроить его там, где он открывает файл .txt со всей информацией, которая выходит, а не просто появляется в консоли. – QuestionGuy