IdoCleanCode
article thumbnail
반응형

파이썬 튜토리얼

데이터 타입 - 문자형
데이터 타입 - 문자형

문자열 이해

문자열은 문자들의 집합체 입니다. 파이썬에서는 작은 따옴표(') 또는 큰따옴표(")로 둘러싸인 문자의 집합을 문자열로 인식합니다.

문자열 정의

  • 문자열은 여러 개의 문자가 연속적으로 나열된 것을 의미합니다. 각 문자는 고유의 위치를 가지며, 이 위치를 인덱스라고 합니다. 파이썬에서는 문자열 내의 첫 번째 문자의 인덱스는 0부터 시작합니다.
    str = '안녕하세요'
    print(str[0]) #안
    print(str[1]) #녕​

문자열의 생성 방법

  • 작은 따옴표 또는 큰 따옴표로 텍스트를 감싸주기만 하면 됩니다.
    str1 = 'Hello, World!'
    str2 = "Python Programming"​

문자열의 특성

  • 파이썬의 문자열은 변경 불가능한 객체입니다. 즉, 한번 생성된 문자열은 변경할 수 없습니다. 또한 문자열은 다양한 메서드를 제공하며, 이를 활용하면 문자열을 쉽게 조작할 수 있습니다.
    str1 = 'Hello, World!'
    print(str1[0])  # 출력: 'H'
    print(str1[-1])  # 출력: '!'
    print(str1.lower())  # 출력: 'hello, world!'
    print(str1.upper())  # 출력: 'HELLO, WORLD!'​

문자열 연산

문자열 연산은 파이썬에서 텍스트 데이터를 조작하고 처리하는 핵심적인 기능중 하나입니다. 문자열을 결합하거나 반복하며 원하는 형태로 가공할 수 있습니다. 이를 통해 효율성과 가독성을 챙길 수 있습니다.

문자열 연결

  • + 연산자를 이용하여 문자열을 연결할 수 있습니다. 이때 문자열과 숫자는 직접 연결할 수 없으며, 숫자를 문자열로 반환한 후 연결해야합니다.
    str1 = 'Hello'
    str2 = 'World'
    print(str1 + ' ' + str2)  # 출력: 'Hello World'
    
    num = 2024
    print(str1 + ' ' + str(num))  # 출력: 'Hello 2024'
    str1 = 'Hello'
    str2 = 'World'
    print(str1 + ' ' + str2)  # 출력: 'Hello World'
    
    num = 2024
    print(str1 + ' ' + str(num))  # 출력: 'Hello 2024'​

문자열 반복

  • * 연산자를 이용하면 문자열을 원하는 만큼 반복할 수 있습니다. 반복문을 이용하여 문자열을 생성하는 것도 가능합니다.
    str1 = 'Hello'
    print(str1 * 3)  # 출력: 'HelloHelloHello'
    
    str2 = ''
    for i in range(5):
        str2 += str1
    print(str2)  # 출력: 'HelloHelloHelloHelloHello'​

문자열 인덱싱

  • 문자열의 각 문자는 고유의 위치를 가지며, 이 위치를 인덱스라고 합니다. 파이썬에서는 문자열 내의 첫 번째 문자의 인덱스는 0부터 시작합니다.
    str1 = 'Hello, World!'
    print(str1[0])  # 출력: 'H'
    print(str1[-1])  # 출력: '!'

문자열 슬라이싱

  • 슬라이싱을 이용하면 문자열의 일부분을 추출할 수 있습니다. 슬라이싱은 [시작 인덱스:종료 인덱스] 형태로 사용하며, 시작 인덱스는 포함하고 종료 인덱스는 제외합니다.
    str1 = 'Hello, World!'
    print(str1[0:5])  # 출력: 'Hello'
    print(str1[-1:])  # 출력: '!'

문자열의 멤버 확인

  • in 연산자를 이용하면 문자열이 특정 문자나 문자열을 포함하고 있는지 확인할 수 있습니다. not in 연산자를 이용하면 반대의 결과를 얻을 수 있습니다.
    str1 = 'Hello, World!'
    str2 = 'Python'
    느낌표 = '!'
    
    print(느낌표 in str1) # 출력: True
    print(str2 in str1) # 출력: False
    print(str2 not in str1) # 출력: Ture​

문자열 함수

문자열 함수는 텍스트 데이터를 다루는 데 사용되며, 길이 측정, 대/소문자 변환. 검색,분할 등의 작업을 수행합니다.

문자열 길이 확인

  • len() 함수는 문자열의 길이를 반환합니다
    str1 = 'Hello, World!'
    print(len(str1))  # 출력: 13​

문자열 내 문자 개수 확인

  • count() 함수는 문자열에서 특정 문자(또는 문자열)의 개수를 반환합니다.
    str1 = 'Hello, World!'
    print(str1.count('l'))  # 출력: 3
    print(str1.count('Hello'))  # 출력: 1​

문자내 문자위치 확인

  • find()함수는 문자열에서 특정 문자(문자열)의 위치를 반환합니다 찾는 문자가 없으면 -1을 반환합니다.
    str1 = 'Hello, World!'
    print(str1.find('l'))  # 출력: 2
    print(str1.find('sd')) # 출력: -1​

 

  • index()함수는 문자열에서 특정 문자의 위치를 반환합니다. 찾는 문자가 없으면 오류를 반환합니다
    str1 = 'Hello, World!'
    print(str1.index('l'))  # 출력: 2
    print(str1.index('sd')) # 출력: ValueError: substring not found​

 

문자열 결합

  • join() 함수는 문자열을 결합합니다. 사용법은 결합문자.join(문자열리스트)의 형태입니다.
    str1 = 'Hello'
    str2 = 'World'
    print(' '.join([str1, str2]))  # 출력: 'Hello World'​

 

문자열 분리

  • split() 함수는 문자열을 분리합니다. 사용법은 문자열. split(분리자)의 형태입니다.
    print(str1.split(',!'))  # 출력: ['Hello', ' World!']​

 

문자열 대소문자 변환

  • upper() 함수는 모든 문자를 대문자로 변환합니다.
    str1 = "Hello, World!"
    print(str1.upper())  # 출력: "HELLO, WORLD!"​

 

  • lower() 함수는 문자열의 모든 문자를 소문자로 변환합니다
    str1 = "Hello, World!"
    print(str1.lower())  # 출력: "hello, world!"​

 

  • capitalize() 함수는 문자열의 첫 문자를 대문자로, 나머지 문자를 소문자로 변환합니다.
    str1 = "hello, WORLD!"
    print(str1.capitalize())  # 출력: "Hello, world!"​

 

  • title() 함수는 문자열의 각 단어의 첫 문자를 대문자로, 나머지 문자를 소문자로 변환합니다.
    str1 = "hello, WORLD!"
    print(str1.title())  # 출력: "Hello, World!"​

 

  • swapcase() 함수는 문자열의 대문자를 소문자로, 소문자를 대문자로 변환합니다.
    str1 = "Hello, World!"
    print(str1.swapcase())  # 출력: "hELLO, wORLD!"​

 

문자열 공백 제거

  • lstrip() 함수는 문자열의 왼쪽에 있는 공백 문자를 제거합니다.
    str1 = "   Hello, World!   "
    print(str1.lstrip())  # 출력: "Hello, World!   "​

 

  • rstrip() 함수는 문자열 오른쪽에 있는 공백 문자를 제거합니다.
    str1 = "   Hello, World!   "
    print(str1.rstrip())  # 출력: "   Hello, World!"​

 

  • strip() 함수는 문자열에 양쪽에 있는 공백 문자를 모두 제거합니다.
    str1 = "   Hello, World!   "
    print(str1.strip())  # 출력: "Hello, World!"​

 

  • 이들 메서드는 인자로 특정 문자를 주면, 공백이 아닌 해당 문자를 제거합니다.
    str2 = "***Hello, World!***"
    print(str2.lstrip('*'))  # 출력: "Hello, World!***"
    print(str2.rstrip('*'))  # 출력: "***Hello, World!"
    print(str2.strip('*'))  # 출력: "Hello, World!"​

참고 자료

https://www.geeksforgeeks.org/python-programming-language/?ref=shm

https://docs.python.org/ko/3/tutorial/index.html
https://roadmap.sh/python

https://www.w3schools.com/python/default.asp

 

반응형
profile

IdoCleanCode

@IdoCleanCode

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!