잡동/programming practice

#3 [Codewars] Counting Duplicates

헤매는중 2016. 5. 9. 19:25

2주만에 쓰네... 사실 2주 동안 몇 개의 문제를 풀긴 했는데 포스팅은 하지 못했다.


Task:

주어진 string에서 중복해서 나오는 캐릭터의 종류(?)의 수를 구하는 문제. 즉

'aaabbcd' -> 2  ( 중복되어 나오는 캐릭터는 a, b 두개)

이런 식으로.



My Solution:





내가 생각하는 Best Solution - tpatja, nkrause323, alpen0 의 풀이


저렇게 return문 한 줄로 끝내려고 했는데 어떻게 해야 할 지 감이 안 왔다. 

내가 생각했을 땐 for loop는 set 안의 원소를 다 훑으니까 [c for c in set(text.lower()) ......] 이런 식으로 구현하면 리스트에 set의 모든 원소가 다 입력될 거라 생각했는데 아니었구나. if문이 뒤에 나오면 걸러지는구나?



배운 점

[i for i in <데이터구조> if <i에대한 조건>]

: 리스트에는 <i에 대한 조건>에 의해 걸러진 값들만 입력된다.