编写一个 python 函数,该函数从 csv 文件中读取内容,执行一些计算,然后将结果输出到单独 html 页面上的 html 表中

Write a python function that reads content from a csv file performs some calculations then outputs the results in a html table on a seperate html page

提问人:M B 提问时间:8/1/2023 更新时间:8/1/2023 访问量:30

问:

我必须对 CSV 文件中的每一列数据执行计算。我计划将文件作为字典读取,以便标头是键,并且每列数据都成为其各自键下的值。我目前有几行代码将键存储为列表和一个代码字符串,如果我指定和索引关键列表,则使用 .get() 函数仅输出该键的值。我目前的问题是如何遍历每个键,以便它一次对其所有值执行统计操作,然后移动到下一个键。我还没有尝试过项目的 HTML 方面,但我假设如果同时完成每列的计算,我可以将其存储在其单元格中,然后,当它移动到以下键以开始对数据进行计算时,将编写代码,以便。它将存储分析,并将向前移动一个单元格。该项目只允许我导入 CSV。代码在下面的下一节中。

当前代码:

def hehehe(file: str, html_file: str, title: str = None):
    with open(file, 'r') as cal_file:
        reader = csv.DictReader(cal_file)
        grouped_data = {}
        for i in reader:
            # this code call on each key individually so that I can get the collective values of each key separately when i put a braket and a number in the bracket
            keys = list(i.keys())
            # what is inside this print outputs the value of each column depending on what the key is
            calc = i.get(keys)          
            print(i.get(keys))
python 函数 csv 字典 文件

评论

0赞 Barmar 8/1/2023
i.get(keys)没有意义。参数 to 必须是单个键。i.get()
0赞 Barmar 8/1/2023
您是否考虑过将 CSV 加载到 pandas 数据帧中?然后,您可以对列执行统计操作。

答:

1赞 Barmar 8/1/2023 #1

我认为您要做的是将每一列放入 .grouped_data

def hehehe(file: str, html_file: str, title: str = None):
    grouped_data = {}
    with open(file, 'r') as cal_file:
        reader = csv.DictReader(cal_file)
        for i in reader:
            for k, v in i.items():
                grouped_data.setdefault(k, []).append(v)

    keys = list(grouped_data.keys())
    # now you can get keys from `keys`, and use grouped_data[key] to get a list of all the values of that key