[英]Variables are not defined and indentation errors
我是python的新手,我正在编写代码以在一周中的几天之间创建性别之间的绘图图,我不知道它有什么问题,因为没有结果,并且有未定义变量'gender'的错误
注意:我正在使用python 3
import calendar
def gender_perday_analysis(filename, gender):
with open(filename, 'r') as f_in:
Reader = csv.DictReader(f_in)
week_days = 0
Female_count = []
Male_count = []
for row in Reader:
if row['gender'] == 'Female':
if row['day_of_week'] == 'Sunday':
week_days+= 1
Female_count.append(week_days)
elif row['day_of_week'] == 'Monday':
week_days+= 1
Female_count.append(week_days)
elif row['day_of_week'] == 'Tuesday':
week_days+= 1
Female_count.append(week_days)
elif row['day_of_week'] == 'Wednesday':
week_days+= 1
Female_count.append(week_days)
elif row['day_of_week'] == 'Thursday':
week_days+= 1
Female_count.append(week_days)
elif row['day_of_week'] == 'Friday':
week_days+= 1
Female_count.append(week_days)
else:
week_days+= 1
Female_count.append(week_days)
else:
week_days+= 1
Male_count.append(week_days)
return Male_count, Female_count
Chicago = './data/Chicago-2016-Summary.csv'
result2 = gender_perday_analysis(Chicago, 'gender')
print(result2)
if row['gender'] == 'Female':
您传入的是一串'gender'
,而不是可变的gender
。 更正以下内容之一:
if row[gender] == 'Female':
导入CSV,可以帮助添加错误
可能是您的文件实际上没有读取您认为需要的内容。 读取文件可能是错误的。 如果可以添加IDE给出的确切错误,将很有帮助。 测试读取文件是否有问题。 添加此语句
for row in Reader:
print(row)
此外,您可以尝试使用Pandas读取和分析文件,因为这使事情变得更加容易。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.