Skip to content

Commit 094afd7

Browse files
committed
Refactor count_letters for improved clarity and efficiency
1 parent c038a0f commit 094afd7

1 file changed

Lines changed: 9 additions & 10 deletions

File tree

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
def count_letters(s: str) -> int:
2-
"""
3-
count_letters returns the number of letters which only occur in upper case in the passed string.
4-
"""
5-
only_upper = set()
2+
upper = set()
3+
lower = set()
4+
65
for letter in s:
7-
if is_upper_case(letter):
8-
if letter.lower() not in s:
9-
only_upper.add(letter)
10-
return len(only_upper)
6+
if letter.isupper():
7+
upper.add(letter)
8+
elif letter.islower():
9+
lower.add(letter)
1110

11+
only_upper = upper - {letter.upper() for letter in lower}
1212

13-
def is_upper_case(letter: str) -> bool:
14-
return letter == letter.upper()
13+
return len(only_upper)

0 commit comments

Comments
 (0)