In this context, if you want to fill in the missing values using Euclidean distance, one can compute distances row-wise and impute from the nearest neighor(s).
What is considered as a simple way is with sklearn's KNNImputer:
import pandas as pd
from sklearn.import KNNImputer
df=pd.read_csv
imputer=KNNImputer(n_neighbors=3, metric=''euclidean'')
df_imputed = pd.DataFrame(imputer.fit_transform(df), columns-df.columns)
By this, it uses Eucliden distance to find the nearest rows and fill missing values. this is much better than coding distance calculations manually.