Из Camel в snake

Это обратное преобразование имён: из слитного стиля нужно сделать вариант с подчёркиваниями. Функция camel_to_snake получает строку в стиле CamelCase. Перед каждой заглавной буквой, кроме первой, добавь подчёркивание, а затем приведи всю строку к нижнему регистру.

Примеры

Ввод
"HelloWorld"
Вывод
"hello_world"
Ввод
"MyVarName"
Вывод
"my_var_name"
Ввод
"Single"
Вывод
"single"

Нужно реализовать

def camel_to_snake(s: str) -> str:

Теги

strings
PostgreSQLv16

Здесь будет результат выполнения кода

Видимые тесты
1
Ввод
"HelloWorld"
Ожидаемый"hello_world"
2
Ввод
"MyVarName"
Ожидаемый"my_var_name"
3
Ввод
"Single"
Ожидаемый"single"
4
Ввод
""
Ожидаемый""
5
Ввод
"ABC"
Ожидаемый"a_b_c"
6
Ввод
" "
Ожидаемый" "
Фокус-радио
На паузе · SomaFM · Fluid