def read_data(data_set):
    """
        读取训练数据或测试数据，服务于train()和test()
        Args:
            data_set: 要获取的数据集
        Return:
            reader: 用于获取训练数据集及其标签的生成器generator
    """

    def reader():
        """
        一个reader
        Args:
        Return:
            data[:-1], data[-1:] -- 使用yield返回生成器(generator)，
            data[:-1]表示前n-1个元素，也就是训练数据，data[-1:]表示最后一个元素，也就是对应的标签
        """
        for data in data_set:
            yield data[:-1], data[-1:]

    return reader