Добавление ведущего нуля к целой части строки, если она состоит только из одной цифры?Python

Программы на Python
Anonymous
Добавление ведущего нуля к целой части строки, если она состоит только из одной цифры?

Сообщение Anonymous »


Я ищу более краткий способ добиться следующего...

У меня есть df (>1M строк) со столбцом в следующем примерном формате:

df = pd.DataFrame({"col": ["ea11", "ea1", "ea3io10d"]})

Я хочу добавлять начальный 0 только к каждой отдельной цифре, найденной в строке.

Итак, преобразованный столбец, который я хотел бы вывести:

["ea11", "ea01", "ea03io10d"]

Я нашел работоспособное, но неэффективное и очень некрасивое решение.

df["col"] = df["col"].str.split(r"(\d+)", regex=True).apply(lambda x: list(filter(None, x) )).apply(lambda x: "".join(list(map(myfunc, x))))

Я не нашел ранее заданного вопроса этого конкретного типа, поэтому буду очень признателен за любую помощь с более эффективным решением :) Спасибо!

Вернуться в «Python»