Python 기본 개념 정리 2
변수
변수에 자료를 할당, 변수를 불러 값을 출력 (반대개념은 상수)
* a=1 의 의미 * >> a라는 공간에 1을 집어 넣었다??
a=2 >> a라는 공간에 2를 집어 넣었다?
변수 조건
1. 변수 명은 문자, 숫자, 밑줄기호를 이용하여 만들 수 있다.
2. 단 숫자로 시작할 수는 없다. 3대장 (x)
3. 대소문자 구별 가능 Seoul != seoul
4. 공백은 불가능하다. lion king (X) >>> 아무생각 없이 하다보면 자주 실수 할 것 같으니 조심
5. 언더바 이외의 특수문자 기호는 불가능 %, &
6. 예약어는 사용 불가 (True, False)
" print(변수) = 변수값 "
문자열
큰 따옴표, 작은 따옴표 둘 다 허용
String1 의 타입은 str (문자열)
3 의 타입은 int (숫자열)
큰 따옴표와 작은 따옴표를 출력
" 'strstrstr' " >> 이런식으로 안에 넣어준다 (큰따옴표 안에 작은 , 작은 따옴표 안에 큰 따옴표)
삼중따옴표 활용
주석처리는 전체 드래그 후 ctrl+ /
""" 문장~~~~ " 줄바꾸기를 할 수 있다.
문자열 다루기
문자열 더하기 곱셈
a= 'Enjoy ' 여기서 y 뒤에 공백을 주면 ptrint 했을 시 공백 포함
b= 'python'
c= a + b
print(c) =
리스트 : [ ] 대괄호로 표시하는 형식
리스트 만들기 ( 데이터를 한꺼번에 처리하기 위해 묶어놓으면 편하다)
student1 = [ 90,95,80,85]
리스트의 타입 및 출력
type(student1) = list
list의 개념
[0, 1, 2, 3, 4] 맨 왼쪽부터 첫 번째 항목은 0번째 순서이다. 마지막 순서는 -1번째부터
ex) 0번째 항목 출력 >> student1[0]
list에 새로운 값을 넣고 싶을 때
student1[0] = 100 #첫 번째 항목에 새로운 데이터 할당 >> 이런식으로 하면 리스트 값이 바뀐다.
다른 타입끼리도 생성 가능하다. >> [숫자형 문자형, 리스트]
리스트 더하기와 곱하기
list1[1,2,3,4]
list2[5,6,7,8]
list = list1 + list2
print(list) = [1,2,3,4,5,6,7,8]
print(list*3) = [1,2,3,4,1,2,3,4,1,2,3,4]
리스트 슬라이싱
list=[0,1,2,3,4,5]
print(list[0:2]) = [0,1]
list_data = [0, 1, 2, 3, 4, 5, 6,'11시 40분', 8, 9]
print(list_data[0:4])
print(list_data[:4])
print(list_data[4:7])
print(list_data[:7])
print(list_data[::2]) >>>> ::2는 0 번째 부터 끝까지 2개마다 보여주세요
[0, 1, 2, 3]
[0, 1, 2, 3]
[4, 5, 6]
[0, 1, 2, 3, 4, 5, 6]
[0, 2, 4, 6]
1::2 >> 첫 번째부터 끝까지 2개마다 보여주세요.
print(list_data[2::2])
print(list_data[1::2])
[2, 4, 6, 8]
[1, 3, 5, '11시 40분', 9]
리스트에서 항목 삭제하기
print(list_data)
del list_data[6]
print(list_data)
del list_data[6]
print(list_data)
[0, 1, 2, 3, 4, 5, '11시 40분', 8, 9]
[0, 1, 2, 3, 4, 5, 8, 9]
[0, 1, 2, 3, 4, 5, 9]
리스트에서 항목의 존재 여부 확인하기
bool로 반환함
list_data1 = [1, 2, 3, 4, 5]
print(5 in list_data1)
print(6 in list_data1)
print(0 in list_data1)
True
False
False
리스트 메서드 활용하기
리스트에서 항목 하나를 마지막에 추가 (append)
myFriends = ['J', 'R', 'K', 'O']
print(myFriends)
myFriends.append('T')
print(myFriends)
['J', 'R', 'K', 'O']
['J', 'R', 'K', 'O', 'T']
리스트에서 특정 항목에 삽입 (insert)
myFriends = ['J', 'R', 'K', 'O']
print(myFriends)
myFriends.insert(1, 'P') "P"를 1인 두 번째 항목에 삽입
print(myFriends)
['J', 'R', 'K', 'O']
['J', 'P', 'R', 'K', 'O']
리스트 마지막부분에 항목 여러개를 추가(extend)
myFriends = ['J', 'R', 'K', 'O']
print(myFriends)
myFriends.extend(['L', 'B'])
print(myFriends)
['J', 'R', 'K', 'O']
['J', 'R', 'K', 'O', 'L', 'B']
첫번째로 일지하는 항목을 리스트에서 제외 ( 같은 항목이 두개 이상 있더라도 첫 번재 항목만 제외) (remove)
myFriends = ['J', 'R', 'K', 'O','K']
print(myFriends)
myFriends.remove('K')
print(myFriends)
['J', 'R', 'K', 'O', 'K']
['J', 'R', 'O', 'K']
마지막 항목을 제거한 후에 반환 (pop)
몇 번째 순서에 있는지 (index)
몇 개가 리스트에 있는지 ( count)
sort, reverse 글자 순서대로
myFriends_2 = ['J', 'R', 'L', 'M']
print(myFriends_2)
indexFriends = myFriends_2.index('L')
print(indexFriends)
['J', 'R', 'L', 'M']
2
myFriends_2 = ['J', 'R', 'L', 'M']
print(myFriends_2)
Lisacount = myFriends_2.count('L')
print(Lisacount)
['J', 'R', 'L', 'M']
1
myFriends_2 = ['J', 'R', 'L', 'M']
print(myFriends_2)
myFriends_2.sort()
print(myFriends_2)
myFriends_2.reverse()
print(myFriends_2)
['J', 'R', 'L', 'M']
['J', 'L', 'M', 'R']
['R', 'M', 'L', 'J']
튜플: 소괄호로 표현 ( ), 리스트와 유사하나 항목 변경이 불가능하다, 소괄호 없이도 표현이 가능하다.
tuple=(1,2,3,4)
type(tuple1) = tuple
tuple[2] = 3 슬라이싱 표현
인자가 1개 밖에 없는 튜플 생성
입력한 후에 콤마(,) 추가 필요
ex) tuple3 = (9,) tuple4 = 10,
튜플 다루기
튜플 변경 및 삭제 불가
변경되지 않는 메서드는 사용 가능
tuple6 = 2, 4, 5, 8, 10, 15
tuple6.index(5)
2
tuple6 = 2, 4, 5, 8, 10, 15
tuple6.count(8)
1
변수.count() 개수 알려줌
변수.index() 몇 번째 순서인지 알려줌
세트 : 중괄호로 표기 { } , 같은값 (중복되는 값)을 허용하지 않음, 집합의 개념이라고 생각하면 쉽다.
A.intersection(B) 집합 A에 대한 집합 B의 교집합 A & B
A.union(B) 집합 A에 대한 집합 B의 합집합 A | B
A.difference(B) 집합 A에 대한 집합 B의 차집합 (A-B)
리스트, 튜플, 세트 간 타입 변환
딕셔너리 만들기
1. 중괄호로 표현한다.
2. 키(key)와 값(value)로 나누어져 있다.
3. 인덱스 대신 키 값을 사용한다.
{ a(키) : b(값) } 의 형식
키를 넣으면 값이 나온다
country_capital["영국"] >>> '런던'
딕셔너리는 키 값으로 호출한다.
(리스트였으면 순서적 의미로 나옴)
dict_data1 = {1:"버스", 3:"비행기", 4:"택시", 5:"자전거"}
dict_data1[3] >>> '비행기'
list1 = ["비행기", "냉장고"]
list1[1] >>> '냉장고'
country_capital = {"영국" : "런던", "프랑스" : "파리", "스위스" : "베른", "호주" : "멜버른", "덴마크" : "코펜하겐"}
country_capital >>> {'영국': '런던', '프랑스': '파리', '스위스': '베른', '호주': '멜버른', '덴마크': '코펜하겐'}
추가하기
country_capital["독일"] = "베를린"
country_capital >>> {'영국': '런던', '프랑스': '파리', '스위스': '베른', '호주': '멜버른', '덴마크': '코펜하겐', '독일': '베를린'}
값 바꿔주기
country_capital["호주"] = "캔버라"
country_capital >>> {'영국': '런던', '프랑스': '파리', '스위스': '베른', '호주': '캔버라', '덴마크': '코펜하겐', '독일': '베를린'}
없애주기
del country_capital["덴마크"]
country_capital >>> {'영국': '런던', '프랑스': '파리', '스위스': '베른', '호주': '캔버라', '독일': '베를린'}
딕셔너리 메서드 활용하기
fruit_code = {"사과" : 101, "배" : 102, "딸기" : 103, "포도" : 104, "바나나" : 105}
print(fruit_code.keys() >>> dict_keys(['사과', '배', '딸기', '포도', '바나나']) #딕셔너리에서 키 전체를 리스트로 반환
print(fruit_code.values()) >>>dict_values([101, 102, 103, 104, 105]) #딕셔너리에서 값 전체를 리스트로 반환
print(fruit_code.items()) >>> dict_items([('사과', 101), ('배', 102), ('딸기', 103), ('포도', 104), ('바나나', 105)]) #키와 값을 튜플 형태로 전환
리스트로 변환
list(fruit_code.keys()) >>> ['사과', '배', '딸기', '포도', '바나나']
데이터 추가
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)