感谢提前看@此问题:函数之外的Python访问变量
我试图解析CSV文件,并返回某些字段的值。该代码完全运行时内嵌的脚本,但是当我尝试创建一个功能是其他模块访问瓦特/我的应用程序,我碰到与变量(键/值)我是从拉动的问题csv文件。
代码来解析CSV(parseCsv.py):
groups =[]
enterprise = []
workinglist = []
def parse_csv(filename):
quote_char = '"'
delimiter = ','
csv_to_parse = open(filename, 'rb')
csv_reader = csv.DictReader(csv_to_parse, fieldnames=[], restkey='undefined-fieldnames', delimiter=delimiter, quotechar=quote_char)
current_row = 0
for row in csv_reader:
current_row +=1
if current_row == 1:
csv_reader.fieldnames = row['undefined-fieldnames']
continue
groups.append(row['groupid'])
enterprise.append(row['enterprise'])
workinglist.append(row)
我用团体,企业,workinglist的global
参数审判;也尝试添加了return groups, return workinglist, return enterprise
不管语法,我不能访问这个功能之外的团体,企业,或workinglist变量。我需要在我的应用程序的其他部分处理这些结果。如果我在函数中添加print groups
,它的行为正确,但是从功能之外我结束了一个[].
我也试图让parse_csv一个类的方法,加入了self
和init
,没有成功。
仅供参考,我从另一个文件中使用parse_csv(csvfilename)
它导入该文件,并正确地读取它调用此。
我敢肯定,这是一件很简单,很快速的我失踪,但在这这么久了,我看不出它已经看呆了,任何帮助,将不胜感激!
以减轻你的问题的识别,请删除所有无关直到你有一个最小的例子来重现这个问题。 (通常是http://repl.it/UAZ输出)。事实上,您的代码可能依赖于外部文件,如csv内容,这会阻止任何人再现您的问题。 – njzk2