我目前正在为班级做一个项目,我需要一些建议/帮助。我有一个要从中提取数据的 csv 文件。(我没有使用 csv 模块,因为我不熟悉,而且讲师警告我们它很复杂。)我已经使用我创建的函数将数据放入列表中。它工作正常,如果值只是一串数字,但如果单元格中有百分号或“N/A”,那么我会收到错误消息。这是代码:
def get_values(file, index):
'''(file object, int) -> list
Return a list of states and corresponding values at a prticular index in file.'''
values_list = []
for i in range(6):
file.readline()
for line in file:
line_list = line.split(',')
values_list.append(line_list[index])
values_list = [i.rstrip('%') for i in values_list]
values_list = [float(i) for i in values_list]
return values_list
while True:
try:
file_name = input('Enter in file name: ')
input_file = open( file_name, 'r')
break
except IOError:
print('File not found.')
heart_list = get_values(input_file, 1)
input_file.close()
input_file = input_file = open( 'riskfactors.csv', 'r')
HIV_list = get_values(input_file, 8)
input_file.close()
我想去掉 %,但到目前为止我还没有尝试过。有什么建议么?