#reを使った文字列判定
正規表現を使うために事前に検索するパターンをコンパイルしておくと良いです。
同じパターンで何度も検索する際、高速に検索することが出来るようになります。
あと、パターンの最初にrを付けることによって文字列中のバックスラッシュ文字をそのままバックスラッシュとして扱えるので、書き方がわかりやすくてお勧めです。
###ひらがなの判定
check.py
import re
word = "りんご"
re_hiragana = re.compile(r'^[あ-ん]+$')
status_hira = re_hiragana.fullmatch(word) #fullmatch:完全一致
# Trueが返却される
# <_sre.SRE_Match object; span=(0, 3), match='りんご'>
###カタカナの判定
check.py
import re
word = "リンゴ"
re_katakana = re.compile(r'[\u30A1-\u30F4]+')
status_kata = re_katakana.fullmatch(word)
# Trueが返却される
# <_sre.SRE_Match object; span=(0, 3), match='リンゴ'>
###ローマ字の判定
check.py
import re
word = "apple"
re_roman = re.compile(r'^[a-zA-Z]+$') #a-z:小文字、A-Z:大文字
status_kata = re_katakana.fullmatch(word)
# Trueが返却される
# <_sre.SRE_Match object; span=(0, 5), match='apple'>
###漢字の判定
check.py
import re
word = "林檎"
re_kanji = re.compile(r'^[\u4E00-\u9FD0]+$')
status_kanji = re_kanji.fullmatch(word)
# Trueが返却される
# <_sre.SRE_Match object; span=(0, 2), match='林檎'>