code: 
  
  
  
  from sklearn.datasets import load_iris
  from sklearn.model_selection import train_test_split
  from sklearn.neighbors import KNeighborsClassifier
  
  # Load iris file
  lowerCAmelCase__	:  Dict 		=load_iris()
  iris.keys()
  
  
  print(F'''Target names: \n {iris.target_names} ''')
  print(F'''\n Features: \n {iris.feature_names}''')
  
  # Train set e Test set
  lowerCAmelCase__		,  lowerCAmelCase__		,  lowerCAmelCase__		,  lowerCAmelCase__	:  Dict 		=train_test_split(
      iris['''data'''], iris['''target'''], random_state=4
  )
  
  # KNN
  
  lowerCAmelCase__	:  int 		=KNeighborsClassifier(n_neighbors=1)
  knn.fit(X_train, y_train)
  
  # new array to test
  lowerCAmelCase__	:  Dict 		=[[1, 2, 1, 4], [2, 3, 4, 5]]
  
  lowerCAmelCase__	:  Tuple 		=knn.predict(X_new)
  
  print(
      F'''\nNew array: \n {X_new}\n\nTarget Names Prediction: \n'''
      F''' {iris['target_names'][prediction]}'''
  )
  
  
  
  
  
  
  
style_context: 
  
  
  
  from __future__ import annotations
  
  class      UpperCAmelCase_						:
  
  						'''simple docstring'''
  
  
  
  
  						def __init__(					self   ,							_A	):
  
  
  
  
  
  
  
  													'''simple docstring'''
  
  													__SCREAMING_SNAKE_CASE								=      value
  													__SCREAMING_SNAKE_CASE								=      None
  													__SCREAMING_SNAKE_CASE								=      None
  
  
  
  
  
  
  
  class      UpperCAmelCase_						:
  
  						'''simple docstring'''
  
  
  
  
  						UpperCamelCase__    :				int
  
  
  
  
  
  
  						def __init__(					self	):
  
  
  
  
  
  
  
  													'''simple docstring'''
  
  													__SCREAMING_SNAKE_CASE								=      0
  
  
  
  
  
  
  						def  _A			(					self   ,							_A   ,							_A	):
  
  
  
  
  
  
  
  													'''simple docstring'''
  
  													if node is None:
  																				return
  
  													if path_sum == self.target:
  																				self.paths += 1
  
  													if node.left:
  																				self.depth_first_search(node.left   ,							path_sum + node.left.value	)
  													if node.right:
  																				self.depth_first_search(node.right   ,							path_sum + node.right.value	)
  
  
  
  
  
  
  						def  _A			(					self   ,							_A   ,							_A = None	):
  
  
  
  
  
  
  
  													'''simple docstring'''
  
  													if node is None:
  																				return 0
  													if target is not None:
  																				__SCREAMING_SNAKE_CASE								=      target
  
  													self.depth_first_search(_A   ,							node.value	)
  													self.path_sum(node.left	)
  													self.path_sum(node.right	)
  
  													return self.paths
  
  
  if __name__ == "__main__":
  			import doctest
  
  			doctest.testmod()
  
  
  
  
  
  
  