import keyword


def is_correct_variable_name(string: str) -> bool:
    """
    Check if string is a valid variable name and is not a reserved keyword.
    :param string: string to check
    :return: True/False
    """
    return string.isidentifier() and not keyword.iskeyword(string)