input: Write a python function to load a dataset, split it into features and labels, and fit a KNN classifier on the data.
  assert load_and_fit_knn('dataset.csv', n_neighbors=3, metric='euclidean').get_params()['n_neighbors'] == 3
  assert load_and_fit_knn('dataset.csv', n_neighbors=5, metric='manhattan').get_params()['metric'] == 'manhattan'
  assert isinstance(load_and_fit_knn('dataset.csv', n_neighbors=4, metric='euclidean'), KNeighborsClassifier)
output: def load_and_fit_knn(file_path, n_neighbors=3, metric='euclidean'):
      import pandas as pd
      from sklearn.neighbors import KNeighborsClassifier
      from sklearn.model_selection import train_test_split
      
      # Load the dataset
      data = pd.read_csv(file_path)
      
      # Assume the last column is the label
      X = data.iloc[:, :-1]
      y = data.iloc[:, -1]
      
      # Split into training and test sets
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
      
      # Initialize the KNN classifier
      knn = KNeighborsClassifier(n_neighbors=n_neighbors, metric=metric)
      
      # Fit the classifier on the training data
      knn.fit(X_train, y_train)
      
      return knn