티스토리 뷰

Python

[Python] String (3)

Dongi 2022. 2. 7. 13:31

 

 

 

안녕하세요 동기 여러분!

오늘은 문자열에 특정 문자가 있는지, 있으면 True로 없으면 False로 값을 되돌려주는 함수 만들기와 그 함수를 좀 더 쉽게 표현하는 방법에 대해 알아봅시다!

 

 

 

 

문자열에 특정 문자가 있는지 없는지 확인

dongi_coding = "dongi-coding.tistory.com"

def is_there(letter, words):
    for word in words:
        if word == letter:
            return True
    
    return False
    
print(is_there("o", dongi_coding))
print(is_there("a", dongi_coding))

# 출력값 : 
# True
# False
  • dongi_coding에 "dongi-coding.tistory.com"이라는 문자열을 선언합니다.
  • 함수 is_there를 만드는데 매개변수는 letter(특정 문자)와 words(문자열)입니다.
  • for 반복문을 만드는데 words(문자열)에서 임시 변수 word(문자 하나하나)를 하나씩 빼내어 옵니다.(반복)
  • 만약에 word(문자 하나 하나)가 letter(특정 문자)와 같다면 True를 리턴합니다.
  • 여기서 return False를 else로 for문의 아래에 쓰지 않는데 이유는 아래의 스샷을 봅시다.

위의 스샷을 봅시다.

지금 출력된 값을 보면 모두 False가 나왔습니다. 원래는 True와 False가 나와야 하는데 왜 이렇게 된 걸까요?

"o"를 함수에 넣어서 실행하면 함수의 첫 번째 수행은 바로 dongi_coding의 첫 번째 문자인 "d"와 "o"가 같은지 확인하는 작업입니다. 하지만 "o"와 "d"가 같지 않으니 이게 바로 else로 넘어가서 False값을 리턴해주고 반복문이 끝나버리기 때문입니다. 그래서 return False를 for문 아래가 아닌 함수 아래에 둬야 합니다.

 


 

아이고 복잡해라 좀 쉽게 해 보자

위의 코드는 상당히 복잡하죠? 쉬운 방법이 있습니다.

dongi_coding = "dongi-coding.tistory.com"

print("o" in dongi_coding)
print("a" in dongi_coding)

# 출력값 : 
# True
# False

바로 in 키워드를 사용해서 바로 알아낼 수 있습니다! 대박!

 


 

오늘의 느낌

라면 끓이기 전에 고추기름을 만들어서 끓여보세요! 짬뽕 맛이 남(해물까지 넣어서 볶아서 끓이면 더더욱)

'Python' 카테고리의 다른 글

[Python] Splitting Strings  (0) 2022.02.08
[Python] Formatting Methods  (0) 2022.02.07
[Python] String (2)  (0) 2022.02.07
[Python] String (1)  (0) 2022.02.07
[Python] Multiple Returns  (0) 2022.02.06
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함