[문제 설명]
문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면
2를 return하도록 solution 함수를 완성해주세요.
[제한사항]
1 ≤ str1의 길이 ≤ 100
1 ≤ str2의 길이 ≤ 100
문자열은 알파벳 대문자, 소문자, 숫자로 구성되어 있습니다.
[입출력 예]
str1 | str2 | result |
"ab6CDE443fgh22iJKlmn1o" | "6CD" | 1 |
"ppprrrogrammers" | "pppp" | 2 |
"AbcAbcA" | "AAA" | 2 |
[입출력 예]
입출력 예 #1)
"ab6CDE443fgh22iJKlmn1o" str1에 str2가 존재하므로 1을 return합니다.
입출력 예 #2)
"ppprrrogrammers" str1에 str2가 없으므로 2를 return합니다.
입출력 예 #3)
"AbcAbcA" str1에 str2가 없으므로 2를 return합니다.
[나의 풀이 1]
def solution(str1, str2):
return 1 if str1.find(str2)>=0 else 2
[ find() 특징]
- index를 반환한다.
- string.find(찾을 문자)
- string.find(찾을 문자, 시작 Index)
- string.find(찾을 문자, 시작 Index, 끝 Index)
string = "abcdefghijkl"
#### 찾는 문자가 string에 있는 경우 ####
# : 인덱스가 출력
print(string.find("a"))
print(string.find("cd"))
print(string.find("efg"))
#### 찾는 문자가 string에 없는 경우 ####
# : -1이 출력
print(string.find("o"))
print(string.find("p"))
Out[1]:
# 찾는 문자가 string에 있는 경우
: 인덱스가 출력
0
2
4
# 찾는 문자가 string에 없는 경우
: -1이 출력
-1
-1
[나의 풀이 2]
def solution(str1, str2):
return 1 if str2 in str1 else 2
##### in ####
if 'soo' in 'My name is soo':
print(True)
else:
print(False)
##### not in ####
if 'soo' not in 'My name is soo':
print(True)
else:
print(False)
> 시퀀스 객체 안에서 찾고자 하는 값이 존재하는지 확인하고자 할 때, in과 not in 연산자를 사용한다.
[시퀀스(Sequence) 객체]
- 시퀀스 자료형 : 연속적으로 이어진 데이터를 묶는 자료형
- 예) 리스트, 튜플, 딕션너리, 문자열, range
'Test > python' 카테고리의 다른 글
배열의 유사도 (set) (0) | 2023.04.09 |
---|---|
OX퀴즈 ( eval 함수) (0) | 2023.04.06 |
세균 증식 (비트 연산자: <<, >>, &, | ) (0) | 2023.04.04 |
문자열 정렬하기 (2) (sorted() 사용) (0) | 2023.04.04 |
7의 개수 ( join, count ) (0) | 2023.04.03 |