본문 바로가기
Language_/python

[python] startswith() 사용방법 정리 @.@

by 낭람_ 2020. 8. 13.
반응형

startswith.. 프로그래머스의 전화번호 목록을 풀면서 열심히 공부한 함수다..

 

[프로그래머스] 전화번호 목록 풀이

 

[프로그래머스] 전화번호 목록

문제 설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입��

security-nanglam.tistory.com

 

startswith()는 사용방법이 간단하다

 

우선 str.startswith(str or tuple) 형식으로 사용하면 되고, 반환 값으로는 True, False를 반환한다.

 

string = "hello startswith"
print(string.startswith("hello"))

 

True

 

string = "hello startswith"
print(string.startswith("Hello"))

 

False

 

앞의 예제에서 보이듯 대소문자를 구분하고 인자값에 있는 문자열이 string에 있으면 true, 없으면 false를 반환한다.

 

그리고 인자값에는 tuple 밖에 들어가지 않는데 list나 dict을 넣는다면 오류가 난다.

 

string = "hello startswith"
li = ["hello startswith", "Hello startswith"]
print(string.startswith(li))

 

Traceback (most recent call last):
  File "/solution_test.py", line 18, in test
    actual0 = solution(p0_0,p0_1)
  File "/solution.py", line 6, in solution
    print(string.startswith(li))
TypeError: startswith first arg must be str or a tuple of str, not list

 

string = "hello startswith"
dictionary = {"hello startswith":0, "Hello startswith":0}
print(string.startswith(dictionary))

 

Traceback (most recent call last):
  File "/solution_test.py", line 18, in test
    actual0 = solution(p0_0,p0_1)
  File "/solution.py", line 6, in solution
    print(string.startswith(dictionary))
TypeError: startswith first arg must be str or a tuple of str, not dict

 

... 조심하자.. 맨 아래에 TypeError에서 볼 수 있듯 첫 번째 인자에는 반드시 str이나 str로 이루어진 tuple이 올 수 있다.

 

string = "hello startswith"
tuple_string = ("hello", "bye")
print(string.startswith(tuple_string))

 

True

 

tuple을 사용할 때에는 string에서 시작하는 문자열이 tuple 있으면 true가 반환된다. 

 

위 예제에서는 "hello"가 "hello startswith"에서 시작하는 문자열이므로 true가 반환된 것이다.

반응형

댓글