알파벳이 나열되어 있는 문제는 아스키코드를 활용해서 풀면 좋다.
문자를 아스키코드로 변환
ord("a") -> 97
ord("b") -> 98
ord("A") -> 65
ord("B") -> 66
아스키코드를 문자로 변환
chr(97) -> "a"
chr(98) -> "b"
chr(65) -> "A"
chr(66) -> "B"
c = ord("a")
t = ord('z')
alphabet = []
count = 0
while c <= t :
alphabet.append(chr(c))
c += 1
count += 1
answer = [-1] * count
s = input()
location_count = -1
for i in s:
for j in range(len(alphabet)):
if i == alphabet[j]:
location_count += 1
if answer[j] <= -1:
answer[j] = location_count
print(*answer)
s = input()
alphabet = list(range(97, 123))
for i in alphabet:
print(s.find(chr(i)), end=" ")
alphabet = list(range(97, 123))
i에 a가 들어왔을 경우, chr(i)는 97이다.
위의 alphabet 리스트에 97 값이 없으므로 -1 반환한다.
i에 b가 들어왔을 경우, chr(i)는 98이다.
위의 alphabet 리스트에 98 값이 있으므로 찾게된다.
for i in alphabet:
print(s.find(chr(i)), end=" ")
💡 end : " "는 값을 " " 안의 문자로 이어주는 역할을 한다.