आइए मान लें कि मेरे पास एक जेसन फ़ाइल में प्रति ऑब्जेक्ट 3 फ़ील्ड हैं। वे

[{
    "morning" :   "[0, 1, 4, 6]",
    "afternoon" : "[0, 2, 3, 5, 6]",
    "evening" :   "[1, 4, 6]"
},
    .
    .
    .
{
    "morning" :   "[3, 5, 6]",
    "afternoon" : "[0, 2, 6]",
    "evening" :   "[1, 4, 6]"
}]

यहाँ, 0 = रविवार, 1 = सोमवार, । . . . 6 = शनिवारatur

.
मैं जेसन फ़ाइल को इस तरह से पार्स करना चाहता हूं, जहां 3 फ़ील्ड (सुबह, दोपहर, शाम) के बजाय मेरे पास शेड्यूल नामक केवल 1 फ़ील्ड होगा जो 21 तत्वों की एक सूची है। क्योंकि मेरे पास दिन में 3 बार और हफ्ते में 7 दिन होते हैं। जो मुझे 21 नंबर देता है।

मैं चाहता हूं कि अंतिम परिणाम इस तरह हो,

"शेड्यूल": "[एसएम, सा, से, एमएम, मा, मी, टीएम, टा, ते, डब्ल्यूएम, वा, वी, थम, था, द, एफएम, एफए, फे, सैम, सा, एसएई]"

यहाँ एसएम = रविवार_सुबह, मा = सोमवार_दोपहर, द = गुरुवार_शाम

1st OBJ के लिए आउटपुट उदाहरण:

"schedule" : [true, true, false, true, false, false, false, true, false, false, true, false, true, false, true, false, true, false, true, true, true]
0
user9730761 1 जिंदा 2020, 16:10

1 उत्तर

सबसे बढ़िया उत्तर

आप प्रत्येक दिन (इस मामले में 7 दिन) पर पुनरावृति कर सकते हैं और फिर जांच सकते हैं कि वर्तमान दिन उल्लिखित सरणियों (सुबह, दोपहर और शाम) में मौजूद है या नहीं। यदि यह मौजूद है, तो आप सूची चर में true जोड़ सकते हैं, या फिर false

प्रत्येक दिन के लिए उपलब्धता जोड़ने के लिए आपको प्रत्येक स्थिति, यानी सुबह, दोपहर और शाम की जांच करनी होगी।

अनुरोध के अनुसार, आपके JSON डेटा में शून्य (खाली/कोई नहीं) मानों को सफलतापूर्वक पार्स करने के लिए, आपको पहले यह जांचना होगा कि फ़ील्ड खाली है या नहीं। यदि यह खाली है, तो बस असत्य जोड़ें और अगली स्थिति के लिए जारी रखें, प्रत्येक तीन समय (सुबह, दोपहर और शाम) के लिए।

आपकी आवश्यकता के अनुसार, यहाँ एक नमूना कोड है जो मदद कर सकता है:

import json

# Sample JSON Input
input = '{"morning":[],"afternoon":null,"evening":"[1, 4, 6]"}'

jsonInput = json.loads(input)

# Start processing
schedule = []

for x in range(0, 7):

    if jsonInput['morning'] is None:
        schedule.append('false')
    else:
        if str(x) in jsonInput['morning']:
            schedule.append('true')
        else:
            schedule.append('false')
    if jsonInput['afternoon'] is None:
        schedule.append('false')
    else:
        if str(x) in jsonInput['afternoon']:
            schedule.append('true')
        else:
            schedule.append('false')
    if jsonInput['evening'] is None:
        schedule.append('false')
    else:
        if str(x) in jsonInput['evening']:
            schedule.append('true')
        else:
            schedule.append('false')

print(jsonInput)
print(schedule)
0
Atish Agrawal 1 जिंदा 2020, 14:48