Локальные переменные начинаются с букв в нижнем регистре. Они объявляются в момент присваивания им значений.
name = "Crystal"
age = 1
Их тип определяется не тольки при инициализации, но также из контекста использования. В общем, в них хранятся значения тех типов, которые подразумевает программист, исходя из их местоположения и использования в программе.
Например, присваивание переменной другого выражения присваивает также и тип этого выражения:
flower = "Tulip"
# переменная 'flower' имеет тип String
flower = 1
# переменная 'flower' имеет тип Int32
Нижнее подчеркивание можно использовать в начале имени переменной, но некоторые подобные имена зарезервированы компилятором и их использование не рекомендуется (также они делают код менее удобным для чтения).