Problem

8 /13


모든 문자를 반복

Theory Click to read/hide

모든 문자에 대해 반복

인덱스로 문자에 액세스할 수 있으므로 변수 루프를 사용하여 가능한 인덱스 값을 사용하는 모든 문자를 반복할 수 있습니다. 예를 들어 문자열 s의 모든 문자 코드를 표시하는 프로그램은 다음과 같습니다. <예비> 범위(len(s))의 i에 대해: print(s[i], ord(s[i])) 프로그램에 대한 설명:
1) len(s) 함수는 문자열의 길이를 찾습니다. 첫 번째 문자의 인덱스는 0이고 마지막 문자의 인덱스는 len(s)-1입니다. 루프 변수 i0에서 len(s)-1까지 순차적으로 값을 가져옵니다.
2) 각 줄에서 기호 자체가 먼저 표시되고 내장 함수 ord()에 의해 반환되는 코드가 표시됩니다.

동일한 열거형을 더 짧게 작성할 수 있습니다. <예비> s의 c에 대해: print(c, 오드(c)) 이 조각에서 루프 헤더는 모든 문자 s를 반복하여 변수 c에 차례로 배치합니다.

이미 언급했듯이 문자열로 작업할 때 파이썬의 특징은 문자열이 불변 객체라는 것입니다. 즉, 문자열의 개별 문자를 변경할 수 없습니다.

예를 들어 다음 문은 작동하지 않습니다. <예비> s[5]='a' 그러나 필요한 변경 사항이 있는 문자에서 새 줄을 작성할 수 있습니다.
 
과제
입력 문자열에서 모든 문자 'a'를 교체하십시오. 문자 'b'로.  <예비> 에스 = 입력() sNew = "" s의 c에 대해: if c == 'a': c = 'b'; s신규 += c 인쇄(sNew)
이 프로그램에서 루프는 문자열 s의 모든 문자를 통과합니다. 루프 본문에서 변수 с의 값을 확인합니다. 기호가 'a' 기호와 일치하면 이를 교체합니다. 'b< /code>'로 추가하고 더하기 연산자를 사용하여 새 줄 sNew의 끝에 추가합니다.
이 옵션은 다소 느립니다.

앞으로 내장된 문자열 조작 함수를 살펴보고 더 빠르게 수행하는 방법에 대해 알아보겠습니다.
 

Problem

문자열의 모든 점을 0과 영문 대문자 "X"로 바꾸는 프로그램을 작성하세요. 단위. 
 
<헤드> <일># <몸>
입력 출력
1 ..X..XX 0010011