TheAlgorithms-Python
30 строк · 872.0 Байт
1"""
2wiki: https://en.wikipedia.org/wiki/Heterogram_(literature)#Isograms
3"""
4
5
6def is_isogram(string: str) -> bool:7"""8An isogram is a word in which no letter is repeated.
9Examples of isograms are uncopyrightable and ambidextrously.
10>>> is_isogram('Uncopyrightable')
11True
12>>> is_isogram('allowance')
13False
14>>> is_isogram('copy1')
15Traceback (most recent call last):
16...
17ValueError: String must only contain alphabetic characters.
18"""
19if not all(x.isalpha() for x in string):20raise ValueError("String must only contain alphabetic characters.")21
22letters = sorted(string.lower())23return len(letters) == len(set(letters))24
25
26if __name__ == "__main__":27input_str = input("Enter a string ").strip()28
29isogram = is_isogram(input_str)30print(f"{input_str} is {'an' if isogram else 'not an'} isogram.")31