크래시 코스의 세 번째 강의에 오신 것을 환영합니다.
이 강의에서는 파이썬에서 문자열을 다루는 법을 배웁니다. 팝콘을 준비하고 단단히 앉으십시오.
문자열
먼저 따옴표에 대해 이야기하고 Python에서 도입할 수 있는 혼란을 제거해 보겠습니다.
이전에 언급했듯이 Python에서 함수 뒤에 작은따옴표와 큰따옴표를 모두 사용할 수 있습니다. 이것의 특정 유틸리티가 있습니다. 이와 같은 것을 인쇄하고 싶다고 가정하십시오.
print('This is Shahbaz's computer')
이제 위의 표현식에서 "Shahbaz's"에서와 같이 두 번째 따옴표 이후의 모든 것은 파이썬 인터프리터에 의해 식별되지 않을 것입니다. 왜냐하면 파이썬은 두 번째 따옴표를 문자열의 끝으로 사용할 것이기 때문입니다. 이 경우 큰 따옴표를 사용하여 다음과 같이 문자열을 선언하고 싶습니다.
print("This is Shahbaz's computer")
이것은 반대 방향으로도 적용될 수 있으며 문자열 내부에 큰 따옴표가 있는 경우 작은 따옴표를 사용할 수 있습니다. 예
print('This "computer" belongs to Shahbaz')
이제 여러 줄에 걸쳐 있는 문자열을 인쇄하려면 문자열을 묶기 위해 삼중 따옴표를 사용해야 합니다. 이러한 따옴표는 문자열의 내용에 따라 단일 또는 이중일 수도 있습니다. 예를 들어:
이제 문자열에서 특정 문자를 인쇄하려고 한다고 가정해 보겠습니다. 어떻게 하시겠습니까?
Python 인터프리터는 다음과 같이 문자열의 문자를 색인화합니다.
터미널에서 볼 수 있듯이 'h'만 인쇄되었습니다. 변수 뒤에 write 대괄호 안에 3을 작성하여 터미널에 인쇄할 문자열의 세 번째 문자만 선택했기 때문입니다. Python 인터프리터는 또한 큰 문자열을 단순화하기 위해 음수로 문자를 인덱싱합니다. 즉, '-1'이 문자열의 마지막 숫자가 되는 식입니다. 공백은 인덱싱되지 않습니다. 즉, 위의 문자열에는 21개의 인덱싱된 공백만 있습니다.
문자열에서 일련의 문자를 선택할 수도 있습니다. 예
HashDork = ('Python Course by Shahbaz')
print(HashDork[0:3])
이 프로그램은 터미널에 'Pyt'를 인쇄합니다. 인덱스 3은 여기서 제외됩니다.
HashDork = ('Python Course by Shahbaz')
print(HashDork[2:])
같은 방식으로 끝 인덱스를 제공하지 않으면 파이썬은 첫 번째 인덱스 다음에 전체 문자열을 인쇄합니다. 이 프로그램의 출력은 'thon Course by Shahbaz'입니다. 이것은 그 반대의 경우도 마찬가지입니다. 즉, 첫 번째 인덱스를 놓치면 시작부터 마지막으로 정의된 인덱스까지의 전체 문자열이 인쇄됩니다.
인덱싱 괄호 안에 콜론만 있는 프로그램은 터미널에 완전한 문자열을 생성합니다.
운동
흥미로운 운동이 있습니다.
[1:-1]의 인덱스 간격을 정의하는 프로그램을 작성하십시오. 어떤 결과가 나올 것이라고 생각하십니까? 직접 해보십시오.
형식이 지정된 문자열
형식이 지정된 문자열은 변수를 사용하여 일부 텍스트를 동적으로 생성하는 상황에서 특히 유용합니다. 보여드리겠습니다.
이름과 성이라는 두 개의 변수가 있다고 가정해 보겠습니다.
first_name = 'Shahbaz'
last_name = 'Bhatti'
이제 터미널에 'Shahbaz [Bhatti] is coder'를 인쇄하려고 합니다. 어떻게 할까요? 다음과 같은 세 번째 변수를 소개합니다.
message = 'first_name + ' [' + last_name + '] is a coder'
이제 이 프로그램을 인쇄하고 실행하면 터미널에 'Shahbaz [Bhatti] is coder'가 표시됩니다.
이 접근 방식은 완벽하게 작동하지만 텍스트가 더 복잡해지면 출력을 시각화하기가 더 어려워지기 때문에 이상적이지 않습니다. 여기에서 형식화된 문자열을 사용하여 출력을 더 쉽게 시각화할 수 있습니다.
세 번째 변수 'message'를 변경하고 형식화된 문자열을 도입해 보겠습니다. 형식이 지정된 문자열을 정의하려면 문자열 앞에 ' f '를 붙인 다음 중괄호를 사용하여 문자열에 값을 동적으로 삽입합니다. 우리 프로그램은 다음과 같이 보일 것입니다:
first_name = 'Shahbaz'
last_name = 'Bhatti'
message = f'{first_name} [{last_name}] is a coder'
형식이 지정된 문자열을 정의하려면 문자열에 F를 접두어로 붙인 다음 중괄호를 사용하여 문자열에 값을 동적으로 삽입합니다.
파이썬 문자열로 할 수 있는 멋진 일들
파이썬 문자열로 할 수 있는 정말 멋진 몇 가지를 보여 드리겠습니다.
1. 문자열의 문자 수
변수를 정의하는 것으로 시작하겠습니다.
message = 'Shahbaz Bhatti is a Coder '
이제 위 문자열의 문자 수를 결정하려면 Python에 내장 함수 "len"이 있습니다. 이 함수로 변수를 다음과 같이 인쇄하십시오.
print(len(message))
이것은 사용자로부터 입력을 받을 때 특히 유용합니다. 예를 들어 온라인으로 양식을 작성할 때 각 입력 필드에 제한이 있는 경우가 많습니다. 예를 들어, 이름에 50자를 사용할 수 있으므로 이 "len" 함수를 사용하여 입력 필드의 문자 수를 제한할 수 있습니다.
2. 문자열의 문자를 대문자 또는 소문자로 변환
점 연산자를 통해 문자열 관련 함수에 액세스할 수 있습니다. 변수 이름을 입력할 수 있고 그 앞에 점을 넣으면 이러한 모든 기능의 목록을 볼 수 있습니다.
이제 보다 정확한 용어로 이러한 기능을 메서드라고 합니다. 이것은 우리가 미래에 살펴보고 싶은 객체 지향 프로그래밍의 용어입니다. 다른 것에 속하거나 어떤 종류의 객체에 특정한 경우, 우리는 그 기능을 메소드라고 부릅니다. 이 경우 문자열을 대문자로 변환하기 위해 "upper" 메서드를 사용합니다.
이 함수는 문자열에만 해당하므로 이를 메서드라고 합니다. 대조적으로 "len"과 "print"는 범용 함수이며 문자열이나 숫자 또는 다른 종류의 객체에 속하지 않습니다. 이것이 함수와 메소드의 기본적인 차이점입니다.
이제 이것을 인쇄해 보겠습니다.
message = 'Shahbaz Bhatti is a coder'
print(message.upper())
그리고 문자열이 대문자임을 알 수 있습니다. 마찬가지로 문자열을 소문자로 변환하는 "lower" 메서드가 있습니다. "title" 메서드를 사용하여 문자열의 각 단어를 대문자로 사용할 수도 있습니다.
이 메서드는 원래 문자열을 변경하거나 수정하지 않습니다. 실제로 새 문자열을 만들고 반환합니다.
3. 문자열에서 문자 시퀀스 찾기
문자열에서 특정 문자의 인덱스를 찾기 위해 다른 방법을 시도해 보겠습니다.
유형:
message.find('b')
동일한 변수 다음에 인쇄하십시오. 문자열에서 문자 'b'가 처음 나타나는 인덱스(이 경우 4)를 인쇄합니다.
이 메서드는 대소문자를 구분하며 문자열에서 문자를 찾을 수 없는 경우 -1을 반환합니다. 일련의 문자에도 사용할 수 있습니다.
예를 들어, 다음 프로그램:
message = 'Shahbaz Bhatti is a coder'
print(message.find('coder'))
"coder" 시퀀스가 인덱스 20에서 시작하므로 값 "20"을 반환합니다.
4. 문자열의 문자 바꾸기
"바꾸기" 방법을 사용하여 문자열의 문자 또는 일련의 문자를 바꿀 수 있습니다. 실제로 이것을 봅시다.
message = 'Shahbaz Bhatti is a coder'
print(message.replace('coder', 'programmer'))
이 프로그램은 "코더"라는 단어를 "프로그래머"로 바꾸고 터미널에 인쇄합니다.
5. 문자열에서 문자의 존재 확인
이제 문자열의 문자 또는 문자 시퀀스의 존재를 확인하려는 경우가 있습니다. 이러한 상황에서는 다음과 같이 표현 형식을 사용할 수 있습니다.
message = 'Shahbaz Bhatti is a coder'
print(메시지의 '파이썬')
이제 이것은 부울 함수를 반환합니다. 즉 "참" 또는 "거짓"입니다. 이와 같이;
이러한 모든 메서드와 기능은 대소문자를 구분합니다.
마무리!
문자열에는 훨씬 더 많은 것이 있으며 앞으로 나아가면서 점차적으로 배우게 될 것입니다. 다음으로 파이썬에서 산술 연산을 수행하는 방법을 배웁니다.
댓글을 남겨주세요.