从输入文件创建名称列表

时间:2017-03-30 05:16:29

标签: python python-3.x

我疯狂地想弄清楚如何摆脱错误'str没有属性追加'。我需要从输入文件中将人名添加到name_list。

输入文件中的典型行将为:

Tameka harris 3/4/17

这是我到目前为止的代码:

def process_input(file1, any_dict, any_set):

    #open input file
    customer_input_file = open(file1, 'r')


    #initialize a list to store info by line
    line_list = []

    #Create a name counter
    index = 0

    #read file line by line
    for line in customer_input_file:
        #split the line
        line_list = line.split()
        #slice the list to make a list with only names and no dates
        name_list = line_list[-1]
        #create a variable for first name from list
        fname = name_list[0].title()
        #create a last name variable from list
        lname = name_list[1].title()
        #add the two name variables together as a new list
        input_name = [fname + ' ' + lname]


        #add names to name list
        name_list.append(input_name)

        #add names to name list
        any_set.add(name_list[index])

        #count the times a name repeats in the name list
        any_dict[input_name] = name_list.count(input_name)


        #add 1 to index
        index += 1


    #Close input file
    customer_input_file.close

1 个答案:

答案 0 :(得分:0)

# slice the list to make a list with only names and no dates
name_list = line_list[-1]

以上内容返回列表中的最后一项字符串,这就是name_list.append(input_name)引发错误的原因。

您需要的是排除最后一项:

name_list = line_list[:-1]