【问题标题】:How do I access the contents of this list? (Python)如何访问此列表的内容? (Python)
【发布时间】:2023-03-09 19:34:01
【问题描述】:

我需要在第二个函数get_month_averages 中访问get_data_list 函数中添加到data_list 的新信息,但是当我尝试这样做时,它说data_list 未定义。我该怎么做?

import csv

def get_data_list(data_file):
    data_file = open("table.csv", "r")
    data_list = []
    for line_str in data_file:
        data_list.append(line_str.strip().split(','))
    return data_list

def get_month_averages(data_list):
    date_list = []
    vol_list = []
    adjclos_list = []
    for row in data_list:
        date_list.append(row[0])
        vol_list.append(row[5])
        adjclos_list.append(row[6])
        all_list = [date_list, vol_list, adjclos_list]
    return all_list
print (get_month_averages(data_list))

【问题讨论】:

  • 它抱怨底部的print 行,因为当您将data_list 传递给get_month averages 时,您从未定义它。您需要在它之前(以及函数之外)添加一行,例如data_list = get_data_list()。此外,您的函数的第一行应该只是 def get_data_list():,因为它不需要带参数。

标签: python list function csv


【解决方案1】:

这个有效:

import csv

def get_data_list():
    data_file = open("table.csv", "r")
    data_list = []
    for line_str in data_file:
        data_list.append(line_str.strip().split(','))
    return data_list

def get_month_averages(data_list):
    date_list = []
    vol_list = []
    adjclos_list = []
    for row in data_list:
        date_list.append(row[0])
        vol_list.append(row[5])
        adjclos_list.append(row[6])
        all_list = [date_list, vol_list, adjclos_list]
    return all_list

dList = get_data_list()
mAvg = get_month_averages(dList)
print mAvg

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-04
    • 1970-01-01
    • 2011-07-18
    • 2015-07-05
    • 2018-07-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多