为什么我的Python代码不打印我的列表?
我已经写了一个函数,它应该返回一个列号,它对应于我想从csv文件中稍后提取的特定变量。变量名称由state_aggregate_vars
指定。为什么我的Python代码不打印我的列表?
import csv import numpy
def compute_countyStats(state_aggregate, year, state_aggregate_vars, listCounties, county_var, int_obese, int_healthy, int_refuse): :
f = open(state_aggregate, 'r')
readit = csv.reader(f)
headers = readit.next()
use_cols = []
for name in state_aggregate_vars:
use_cols.append(headers.index(name))
return use_cols
county_data = numpy.genfromtxt(f, dtype=float, delimiter=',', names = state_aggregate_vars, filling_values= -1,
usecols= use_cols, usemask=False)
sorted_array = county_data(numpy.argsort(county_data, axis= headers.index(county_var))
for code in listCounties:
temp = []
for entry in sorted_array:
if entry[0] == code:
temp.append(float(entry[1]))
else:
continue
percent_healthy = numpy.true_divide(temp.count(int_healthy),num_obs)
percent_obese = numpy.true_divide(temp.count(int_obese),num_obs)
percent_refused = numpy.true_divide(temp.count(int_refuse),num_obs)
county_stats[code] = year, code, percent_healthy, percent_obese, percent_refused,
return county_stats
接下来,我调用此函数使用下列内容:
state_aggregate = "Aggregate_test90.csv" year = 1990
state_aggregate_vars = ['_BMI90', 'AGE90', 'CTYCODE90', 'IYEAR90', 'SEX90', '_RFOBESE90']
listCounties = [31, 43, 163, 32, 167, 97]
county_var = 'CTYCODE90'
int_obese = 2
int_healthy = 1
int_refuse = 0
test = compute_countyStats(state_aggregate, year, state_aggregate_vars, listCounties, county_var, int_obese, int_healthy, int_refuse)
这里是我的错误:
SyntaxError: invalid syntax in line 6: for name in state_aggregate_vars:
可能是什么回事?
这是我python -V
:
Python 2.7.3 -- EPD 7.3-2 (32-bit)
回答:
有在你的代码中的一些错误:
线4:冒号多
线14:缺少括号
线17 :缺少缩进
第27行:缺少缩进
回答:
看起来我的Python安装被破坏了。我重新安装了它,现在这个功能非常完美。
以上是 为什么我的Python代码不打印我的列表? 的全部内容, 来源链接: utcz.com/qa/258075.html