使用python 2.x

时间:2017-10-20 06:38:39

标签: python html json

我正在json文件中写一个字典,我创建了一个函数来读取json并将其发送到html文件。我的问题是,它实际上并没有写字典。我真的需要帮助,因为经过大量的思考和搜索,我无法找到我做错的事。

我在一个名为queries

的文件中创建字典
dict_scan_data = scan_data.to_dict(orient='records')

    data_load ={}
    data_load['noscan'] = dict_scan_data

    return json.dumps(data_load)


def updateJsonFiles():
    f = open('../site/json/data.json', 'w')
    f.write(calcProductionAsJSON())
    f.close()

# updateJsonFiles()

我做了这样的读取功能:

import json
from queries import calcProductionAsJSON

def GetProductionTotals():
    """
    Return the production data as json
    """
    f = open('../site/json/data.json', 'r')
    data = f.read()
    f.close()
    return json.dumps(data)


def GetProductionTotalsLive():
    """
    Return the production data as json
    """
    return calcProductionAsJSON()

在html中:

<tr ng-repeat="item in data">
                <td>{{ item.Masina }}</td>
                <td>{{ item.Productie }}</td>
                <td>{{ item.Scanned }}</td>
                <td>{{ item.Delta }}</td>
                </tr>

我是python的新手,很抱歉,如果这个问题看似简单或愚蠢

2 个答案:

答案 0 :(得分:1)

json.dumps从python dict中生成字符串(JSON) json。加载加载字符串(JSON)到dict

示例(python 2.7.6)

library(tidyverse)
nm1 <- c("A", "C", "D", "E", "F", "G")
split(df1, cumsum(grepl("[A-Z]", df1$X))) %>%
       map(~ if(any(grepl("[A-Z]", .$X))) { 
               names(.) <- unlist(.[1,])
              .[-1,]
       } else .) %>% 
            map(~ .[names(.) != ""]) %>% 
            bind_rows %>%
            group_by(Keg) %>%
            summarise_at(vars(nm1), funs(sum(as.numeric(.), na.rm = TRUE)))

# A tibble: 7 x 7
#    Keg     A     C     D     E     F     G
#  <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#1  123F     1     0     0     0     0     0
#2  134E     0     0     0     0     1     0
#3  13CD     0     0     0     0     1     0
#4  234B     0     0     0     0     0     1
#5  234F     0     0     0     1     0     0
#6  ABCD     0     1     0     0     0     0
#7  DCEF     0     0     1     0     0     0

所以在GetProductionTotals中你应该调用json.loads(data)

答案 1 :(得分:1)

我认为在GetProductionTotals()中,它应该返回json.loads(data)而不是json.dumps(data),因为json.dumps返回一个字符串,而json.loads从传递给它的字符串返回json。 / p>