У меня есть этот код ниже, который читает некоторые идентификаторы категории из CSV-файла и загружает соответствующие идентификаторы пути из таблицы SQL. Я хочу сохранить тот же порядок, что и исходныйсписок.Мне было интересно, знаете ли вы, ребята, лучший способ сделать это?
# read some category ids from a csv file
data = pd.read_csv(filename)
# cast values to int, and then to string to avoid DB injection
joined_category_ids = ",".join([str(int(x)) for x in data.category_id])
query = f"""SELECT path_id, category_id FROM path WHERE category_id IN ({joined_category_ids});"""
# query the associated path ids from a database
path_ids = pd.read_sql_query(query, con=con)
# have them in the same order as the initial list
sorted_path_ids = path_ids.set_index("category_id", drop=False).loc[data.category_id]
# drop the category_id index
final_path_ids = sorted_path_ids.reset_index(drop=True)