input: Write a python function to train a KMeans clustering model and visualize the clusters.
  assert kmeans_clustering_and_visualize('data.csv', 3) is not None
  assert kmeans_clustering_and_visualize('data.csv', 5) is not None
  assert kmeans_clustering_and_visualize('data.csv', 7) is not None
output: def kmeans_clustering_and_visualize(file_path, n_clusters):
      import pandas as pd
      from sklearn.cluster import KMeans
      import matplotlib.pyplot as plt
      
      # Load the data
      data = pd.read_csv(file_path)
      
      # Assuming the data has no header and we use all columns
      X = data.values
      
      # Train KMeans model
      kmeans = KMeans(n_clusters=n_clusters, random_state=42)
      kmeans.fit(X)
      
      # Predict clusters
      clusters = kmeans.predict(X)
      
      # Visualize clusters
      plt.figure(figsize=(10, 8))
      
      # Scatter plot for each cluster
      for i in range(n_clusters):
          plt.scatter(X[clusters == i, 0], X[clusters == i, 1], label=f'Cluster {i+1}')
      
      # Centroid plot
      plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=300, c='red', label='Centroids')
      
      plt.title('KMeans Clustering')
      plt.xlabel('Feature 1')
      plt.ylabel('Feature 2')
      plt.legend()
      plt.show()
      
      return kmeans