<목차>
1. 변수
2. 문자열
3. 리스트
4. 튜플
5. 세트
6. 딕셔너리
01. 변수
● 데이터를 변수에 할당하기 (변수명 = data)
: 변수에 자료를 할당하고 변수를 불러 값을 출력한다.(↔ 상수: 변하지 않음 (ex: PI π ))
※ 주의) == 같다의 의미가 아님!
<변수명 설정 시 규칙>
① 변수 명은 문자, 숫자, 밑줄기호를 이용하여 만들 수 있다.
EX) a, book1, my_student2, MyDog, _my_number
② 숫자로 시작할 수 없다. 5징어(X)
③대소문자를 구별함 Money != money
④공백은 불가 world cup (x)
⑤ 밑줄 이외의 기호는 불가 (%, & 등)
⑥ 예약어는 사용 불가 (True, False, and, or 등)
02. 문자열(string)
● 문자열 만들기
- 큰따옴표(" ") or 작은따옴표( ' ') 사용
- type() > str
● 문자열 전체 삼중따옴표로 감싸기
- 문자열에 따옴표 모두 포함하고 싶거나 문장을 여러 행 넣고 싶을 때 사용
long_string1 = '''[삼중 작은따옴표를 사용한 예]
파이썬에는 삼중 따옴표로 여러 행의 문자열을 입력할 수 있습니다.
큰따옴표(")와 작은따옴표(')도 입력할 수 있습니다.'''
long_string2 = """[삼중 큰따옴표를 사용한 예]
파이썬에는 삼중 따옴표로 여러 행의 문자열을 입력할 수 있습니다.
큰따옴표(")와 작은따옴표(')도 입력할 수 있습니다."""
print(long_string1)
print(long_string2)
> [삼중 작은따옴표를 사용한 예]
파이썬에는 삼중 따옴표로 여러 행의 문자열을 입력할 수 있습니다.
큰따옴표(")와 작은따옴표(')도 입력할 수 있습니다.
> [삼중 큰따옴표를 사용한 예]
파이썬에는 삼중 따옴표로 여러 행의 문자열을 입력할 수 있습니다.
큰따옴표(")와 작은따옴표(')도 입력할 수 있습니다.
● 문자열 다루기
- 문자열 더하기 : 문자열끼리 연결해 하나로 만든다.
- 문자열 곱하기 : 문자열을 곱한 만큼 반복한다.
a = 'Enjoy '
b = 'python!'
c = a + b
print(c)
print(c * 3)
> Enjoy python!
> Enjoy python!Enjoy python!Enjoy python!
03. 리스트(list) [ ]
● 리스트 만들기
: 데이터를 한꺼번에 처리하기 위해 묶어서 관리한다.
- [ ] 대괄호 이용
- 데이터 입력한 순서대로 지정 콤마(,) 로 구분
- 데이터 타입 같지 않아도 됨
- type() > list
student1 = [90,95,85,80]
student1
> [90, 95, 85, 80]
type(student1)
> list
● 리스트 인덱스 값
- 인덱스의 범위 o부터 n-1까지
※ 인덱스 값 0부터 시작함!!
student1 = [90,95,85,80]
student1[0] #첫 번째 항목 출력
> 90
student1[1] #두 번째 항목 출력
> 95
student1[-1] # 마지막 항목 출력
> 80
- 인덱스 값을 이용해 새로운 데이터를 할당
student1 = [90,95,85,80]
student1[1] = 100 # 두 번째 항목에 새로운 데이터 할당
student1
> [90, 100, 85, 80]
● 리스트 다루기
- 리스트 더하기 : 리스트를 연결한다.
list_con1= [1,2,3,4]
list_con2 = [5,6,7,8]
list_con = list_con1 + list_con2 # 리스트 연결
print(list_con)
> [1, 2, 3, 4, 5, 6, 7, 8]
- 리스트 곱하기 : 리스트를 곱한 수만큼 반복한다.
list_con1= [1,2,3,4]
list_con = list_con1 * 3 # 리스트 반복
print(list_con)
> [1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]
- 리스트 중 일부 항목 가져오기 : 리스트 [i_start, i_end:i_step]
→ 범위를 지정하면 i_start 부터 i_end -1 까지 리스트 반환(생략하면 0, 끝, 1로 간주한다.)
list_data = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list_data)
print(list_data[0:3])
print(list_data[4:8])
print(list_data[:3])
print(list_data[7:])
print(list_data[::2])
> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
> [0, 1, 2]
> [4, 5, 6, 7]
> [0, 1, 2]
> [7, 8, 9]
> [0, 2, 4, 6, 8]
- 리스트에서 항목 삭제하기: del 리스트[i]
list_data = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list_data)
> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
del list_data[6]
print(list_data)
> [0, 1, 2, 3, 4, 5, 7, 8, 9]
- 리스트에서 항목의 존재 여부 확인하기 : 항목 in 리스트
→ bool 형태로 반환된다.
list_data1 = [1, 2, 3, 4, 5]
print(5 in list_data1)
print(6 in list_data1)
> True
> False
● 리스트 메서드 활용하기
리스트 메서드 | 설명 | 예시 myFriends = ['James', 'Robert', 'Lisa', 'Mary'] |
append() | 항목 하나를 맨 마지막에 추가 | myFriends.append('Thomas') > ['James', 'Robert', 'Lisa', 'Mary', 'Thomas'] |
insert() | 특정 위치에 항목 하나를 삽입 | myFriends.insert(1,'Paul') > ['James', 'Paul', 'Robert', 'Lisa', 'Mary'] |
extend() | 항목 여러 개를 맨 마지막에 추가 | myFriends.extend('Laura'.'Betty') > ['James', 'Robert', 'Lisa', 'Mary', 'Laura', 'Betty'] |
remove() | 입력값과 첫 번째로 일치하는 항목을 삭제 | myFriends.remove('James') > ['Robert', 'Lisa', 'Mary'] |
pop() | 마지막 항목을 제거한 후에 반환 | myFriends.pop() > ['James', 'Robert', 'Lisa'] |
index() | 인자와 일치하는 첫 번째 항목의 위치를 반환 | myFriends.index('Lisa') > 2 |
count() | 인자와 일치하는 항목의 개수를 반환 | myFriends.count('Mary') > 1 |
sort() | 숫자나 문자열로 구성된 항목을 순방향으로 정렬 | myFreinds.sort() > ['James', 'Lisa', 'Mary', 'Robert'] |
reverse() | 항목을 끝에서부터 역순으로 정렬 | myFriends.reverse() > ['Mary', 'Lisa', 'Robert', 'James'] |
04. 튜플(tuple) ()
● 튜플 만들기
: 리스트와 유사하나 한 번 생성된 튜플은 요소를 변경하거나 삭제할 수 없음
- 소괄호 이용()
- 소괄호 없이도 생성가능
- 인자가 하나만 있는 튜플 생성 시 반드시 쉼표 필요
- type() > tuple
tuple1 = (1,2,3,4)
tuple1
> (1, 2, 3, 4)
type(tuple1)
> tuple
tuple2 = 5,6,7,8
print(tuple2)
> (5, 6, 7, 8)
tuple3 =(9,) #반드시 쉼표 필요
tuple4 = 10,
tuple3
tuple4
> (9,)
> (10,)
● 튜플 다루기
- 변경되지 않는 메서드 리스트는 사용가능
ex) index(), count()
05. 세트(set) { }
● 세트 만들기
: 수학의 집합의 개념을 세트를 통해 사용가능
- {중괄호}로 표기
- 교집합, 합집합, 차집합 구할 수 있음
- 중복을 허용하지 않음
- type() > set
● 교집합, 합집합, 차집합 구하기
A = {1, 2, 3, 4, 5} # Set A
B = {4, 5, 6, 7, 8, 9, 10} # Set B
A.intersection(B) # 집합 A에 대한 집합 B의 교집합(A∩B)
A.union(B) # 집합 A에 대한 집합 B의 합집합(A∪B)
A.difference(B) # 집합 A에 대한 집합 B의 차집합(A-B)
> {4, 5}
> {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
> {1, 2, 3,}
A = {1, 2, 3, 4, 5} # Set A
B = {4, 5, 6, 7, 8, 9, 10} # Set B
A & B # 집합 A에 대한 집합 B의 교집합(A∩B)
A | B # 집합 A에 대한 집합 B의 합집합(A∪B)
A - B # 집합 A에 대한 집합 B의 차집합(A-B)
> {4, 5}
> {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
> {1, 2, 3,}
※ 리스트, 튜플 세트 간 타입 변화가 가능하다
06. 딕셔너리(dict) { }
● 딕셔너리 만들기
: 사전처럼 표제어만 찾으면 그에 대한 설명을 전부 확인할 수 있음
- 중괄호{ }로 표현한다.
- 키(key)와 값(value)으로 나누어져 있다.
- 인덱스 값 대신 키 값을 사용한다.
- 키는 숫자와 문자열이, 값은 어떤 데이터 형태로도 올 수 있다.
- type() > dict
country_capital = {"영국":"런던", "프랑스":"파리", "스위스": "베른", "호주":"멜버른", "덴마크": "코펜하겐"}
country_capital
> {'영국': '런던', '프랑스': '파리', '스위스': '베른', '호주': '멜버른', '덴마크': '코펜하겐'}
type(country_capital)
> dict
country_capital["영국"] #값(value)구하기 키(key)값으로 호출한다
> '런던'
dict_data1 = {1:"버스", 3: "비행기", 4:"택시", 5: "자전거"}
dict_data1
> {1: '버스', 3: '비행기', 4: '택시', 5: '자전거'}
dict_data1[3] #위치를 뜻하는 index 3이 아님
> '비행기'
mixed_dict = {1:10, 'dict_num': {1:10, 2:20}, "dict_list_tuple": {"A":[11,12,13], "B":(21,22,23)}, "dict_string": "이것은 책입니다."}
mixed_dict #다양한 형태를 가질 수 있음
> {1: 10,
'dict_num': {1: 10, 2: 20},
'dict_list_tuple': {'A': [11, 12, 13], 'B': (21, 22, 23)},
'dict_string': '이것은 책입니다.'}
● 딕셔너리 다루기
- 데이터 추가/변경/삭제
country_capital = {"영국":"런던", "프랑스":"파리", "스위스": "베른", "호주":"멜버른", "덴마크": "코펜하겐"}
country_capital
> {"영국":"런던", "프랑스":"파리", "스위스": "베른", "호주":"멜버른", "덴마크": "코펜하겐"}
country_capital["독일"]= "베를린" #없는 키값을 넣으면 추가
country_capital
> {'영국': '런던', '프랑스': '파리', '스위스': '베른', '호주': '멜버른', '덴마크': '코펜하겐', '독일': '베를린'}
country_capital["호주"]= "캔버라" #이미 있는 키값을 넣으면 변경
country_capital
> {'영국': '런던', '프랑스': '파리', '스위스': '베른', '호주': '캔버라', '덴마크': '코펜하겐', '독일': '베를린'}
del country_capital["덴마크"] #del 딕셔너리데이터[key] 삭제
country_capital
> {'영국': '런던', '프랑스': '파리', '스위스': '베른', '호주': '캔버라', '독일': '베를린'}
● 딕셔너리 메서드 활용하기
딕셔너리 메서드 | 설명 |
keys() | 키 전체를 리스트 형태로 반환 |
values() | 값 전체를 리스트 형태로 반환 |
items() | 키와 값의 쌍을 (키, 값)처럼 튜플 형태로 반환 |
update(dict_data2) | 키와 값의 쌍을 (키, 값)처럼 튜플 형태로 반환 |
clear() | 모든 항목을 삭제 |
fruit_code = {"사과":101, "배":102, "딸기":103, "포도":104, "바나나":105}
print(fruit_code.keys()) #딕셔너리에서 키 전체를 리스트 형태로 반환
> dict_keys(['사과', '배', '딸기', '포도', '바나나'])
print(fruit_code.keys()) #딕셔너리에서 키 전체를 리스트 형태로 반환
> dict_values([101, 102, 103, 104, 105])
print(fruit_code.items()) # 키와 값을 (키, 값)처럼 튜플 형태로 반환
> dict_items([('사과', 101), ('배', 102), ('딸기', 103), ('포도', 104), ('바나나', 105)])
#리스트로 변환
list(fruit_code.keys())
> ['사과', '배', '딸기', '포도', '바나나']
list(fruit_code.values())
> [101, 102, 103, 104, 105]
list(fruit_code.items())
> [('사과', 101), ('배', 102), ('딸기', 103), ('포도', 104), ('바나나', 105)]
fruit_code2 = {"오렌지":106, "수박":107}
fruit_code.update(fruit_code2) # 데이터 추가
fruit_code
> {'사과': 101, '배': 102, '딸기': 103, '포도': 104, '바나나': 105, '오렌지': 106, '수박': 107}
fruit_code2.clear() # 삭제
print(fruit_code2)
> {}
type(fruit_code2)
> dict
'MLOps 개발자 양성과정 > python' 카테고리의 다른 글
[Day-3] 제어문 (0) | 2023.01.15 |
---|---|
[Day-4] 입력과 출력 (0) | 2023.01.11 |
[Day-12] 데이터 분석을 위한 패키지-2 (pandas) (0) | 2023.01.09 |
[Day-11] 데이터 분석을 위한 패키지(Numpy) (0) | 2023.01.08 |
[Day-1] 파이썬을 계산기처럼 이용하기 (0) | 2023.01.08 |