index 질문입니다
0
python = "Python is beautiful and amazing"
index = python.index("n")
print(index)
index = python.index("n", index + 1)
print(index)
이렇게 쓰면 첫번째 print는 첫번째 n이 어디 있는지 출력하고 그다음 식은
그다음 n이 어디에 있는지 나온다고 하셨잖아요. 그러면 첫번째 식은
python의 n을 출력하는거고 두번째 식은 and의 n을 출력하는 건데 그 다음에
amazing의 n은 몇 번째인지 어떻게 출력하나요?
제가
index = python.index("n", index + 2)
print(index)
이렇게 + 1을 + 2로 바꿔보았는데 그냥 똑같이 and의 n을 인식해서
출력하더라고요.. 그다음, 그러니까 세번째 n을 출력하려면 어떻게 해야 하나요?
답변 1
1
index 는 그 문자가 있는 위치를 반환해주고, index + 1 은 그 문자가 있는 위치 이후부터 그 문자가 있는 위치를 찾아줍니다.
그래서 3번째 나오는 n 을 찾으시려면 똑같은 코드를 한 번 더 적어주면 됩니다.
python = "Python is beautiful and amazing"
index = python.index("n")
print(index)
index = python.index("n", index + 1) # and 의 n
print(index)
index = python.index("n", index + 1) # amazing 의 n
print(index)
위 방법이 아니라면 별도의 함수를 만들어서 사용할 수도 있답니다.
# 주어진 문자열(haystack)에서 찾으려는 문자(needle)가 몇 번째(n) 있는지 확인
def find_nth(haystack, needle, n):
start = haystack.find(needle)
while start >= 0 and n > 1:
start = haystack.find(needle, start+len(needle))
n -= 1
return start
python = "Python is beautiful and amazing"
# 1, 2, 3 번째 n 값을 표시하려면
print(find_nth(python, "n", 1)) # python 의 n
print(find_nth(python, "n", 2)) # and 의 n
print(find_nth(python, "n", 3)) # amazing 의 n
quiz 8 오류 문제
0
69
1
str() 작성 위치
0
51
1
아나콘다
0
60
1
윈도우 설치 도와주세요
0
74
1
std_weight함수에서weight만return가능한가요?
0
68
1
오른쪽위 실행버튼을 누르면 터미널에 에러가 뜨고 컨트롤+F5를 누르면 에러가 안뜹니다.
0
34
1
설치해서 시작하는데 문제가 있습니다.
0
69
1
함수 입력할 때 설명 툴팁 나오게 하려면 어떻게 하나요?
0
104
1
2장 환경설정 문의
0
73
1
스타크래프트 프로젝트
0
74
1
python 파일명.py 입력시 Python 출력
0
133
1
로드맵 질문있습니다!
0
85
2
오류
0
74
1
질문 있습니다.
0
74
1
블로그에 학습한 내용을 정리해도 괜찮을까요?
0
172
1
#퀴즈 3의 5번 질문
0
72
1
print("ㅋ"*5) 에 대한 결과가 도출되지 않습니다
0
81
1
가변인자의 위치가 중요한가요?
0
79
1
vscode옛날 버전 설치
0
221
1
글자색상이 선생님처럼 안나옵니다
0
186
1
슬프네
0
156
1
quiz 6번 관련 문의입니다.
0
129
1
퀴즈#3에 대해서 이렇게 작성해도 되나요?
0
194
1
피드백 부탁드립니다
0
93
1





