클래스
- 어떠한 대상을 표현하기위한 정보(데이터공간, 멤버변수)와 그 공간을 컨트롤 할수 있는 기능(함수(메소드),멤버메소드)을
하나의 블록으로 묶어서 정의한 사용자 정의 자료형이다
- 인스턴스공간 - 실제 데이터가 저장되는 공간 - 객체 마다 만들어진다
- 메소드(함수) - Code영역에 저장되어 있다 - 모든 객체가 하나의 메소드(함수)를 참조하고 있다
메소드와 함수의 차이점
- 함수 - 클래스 외부에서 정의된 기능 - 클래스의 멤버 X
- 메소드 - 클래스 내부에서 정의된 기능 - 클래스의 멤버
문자열(String)
- Python에서 문자열을 총괄하는 클래스
- 문자열을 관리하기 위해서 만들어진 클래스
- C언어에서는 문자열을 관리하는 자료형이 존재하지 않는다
문자열을 관리하기 위해서 char형 배열을 이용하여 관리하였다. - 모든 프로그래밍언어의 기초
- str클래스에서 문자열을 저장하기위해서 문자형 배열형식으로 데이터를 저장한다.
name = "김코딩"
print(type(name))
print(name)
print(name.__str__())
print(name.__len__())
song = """처음이라기엔 너무
길을 이미 다 아는 듯이
우연히라기엔 모두
다 정해진 듯이
우연히 눈을 떠 보니
이 세상에 태어나 있었고
하필 네가 있는 곳이었다
서서히 몸에 배어버린
사소한 습관들이
네게로 가는 길을
내게 알려줘"""
print(song)
#인덱스 - 연속적인 공간들을 구별하기위해서 붙여놓은 번호(C언어에서의 포인터와 관련 있다)
# - 항상 0부터 시작한다 가장 마지막 요소는 크기보다 1이 작다
# 인덱스 사용형식 - 여러개의 데이터를 저장하는 공간에서만 사용 가능
# [인덱스]
print("abcdefg"[0])
s = "abcdefg"
#인덱싱 - 인덱스값 위치의 있는 데이터를 추출하는 역할
print(s[5])
print(s[-7])
#슬라이싱 - 인덱스 범위를 지정해서 사이에 있는것들을 추출하는 역할
# m 부터 n이전까지.
print(s[1:3]) # 1 ~ 3이전까지
print(s[1:-1]) # 1 ~ -1이전까지
print(s[:5]) # 시작부터 5이전까지
print(s[5:]) # 5부터 끝까지
date = "2022년 7월 29일 오전 11시 5분"
# - 슬라이싱을 이용해서 날짜와 시간을 분리 하여 출력
print(date[0:12])
print(date[13:])
#문자열 메소드
mail = "wooju1101@naver.com"
#find(문자열) - 문자열에서 특정 문자열을 찾아 해당 문자의 index값을 반환
# - 검색한 문자열이 있으면 인덱스값 반환 없으면 -1 반환
print(mail.find("woo"))
print(mail.find(".com"))
print(mail.find(".cm"))
print(mail.endswith(".com")) # 이 문자열로 끝나느냐
print(mail.endswith("woo"))
print(mail.startswith(".com")) # 이문자열로 시작하느냐
print(mail.startswith("woo"))
print(mail.__len__()) # 문자열 길이
print(mail.__sizeof__())
# count(문자열) - 해당 문자열의 개수 반환
print(mail.count('a'))
print(mail.count('@'))
print(mail.count('y'))
# 메소드나 함수명에 is가 붙으면 ~이다 ~있냐
print(mail.islower()) # 소문자냐
print(mail.isupper()) # 대문자냐
print(mail.isalpha()) # 알파벳이냐
print(mail.isdigit()) # 숫자냐
#대문자 -> 소문자 , 소문자 -> 대문자
print(mail.upper()) # 대문자로 변환
print(mail.lower()) # 소문자로 변환
print(mail.swapcase()) # 대문자는 소문자로 소문자는 대문자로 변환
text = " askldfjl asdsdajhlfkjasd "
print(text)
print(text.__len__())
# 공백제거
print(text.strip()) # 앞뒤 공백제거
print(text.strip().__len__())
print(text.lstrip()) # 앞 공백제거
print(text.lstrip().__len__())
print(text.rstrip()) # 뒤 공백제거
print(text.rstrip().__len__())
text = text.strip()
print(text.replace("as","SA"))# 문자열 치환
print(text)
rainbow = "빨/주/노/초-파/남/보"
print(rainbow.split('/')) # 문자열 분리
print(rainbow.splitlines(1))
print(rainbow.rsplit('/'))
print("-".join("빨주노초파남보")) # 문자열 삽입
'PYTHON' 카테고리의 다른 글
[PYTHON] list와 tuple (0) | 2023.06.29 |
---|---|
[PYTHON] import time 관련 예제 (0) | 2023.06.29 |
[PYTHON] for 반복문 (0) | 2023.06.29 |
[PYTHON] 랜덤모듈 (0) | 2023.06.28 |
[PYTHON] 제어문 (0) | 2023.06.28 |