isdigit() - для строк в кодировке ascii.
isdecimal() - для строк в кодировке unicode.
Т.к. в питоне, начиная с 3-ей версии, строки по умолчанию хранятся в юникоде, то isdecimal будет работать правильней, ибо он будет охватывать весь спектр кодов юникода, а isdigit - гарантированно только в диапазоне 0-127
Во втором питоне для типа str предпочтительней isdigit