[Python]

Python 기본 개념 정리 2

Sir교수 2022. 11. 24. 22:00
728x90

변수

변수에 자료를 할당,  변수를 불러 값을 출력 (반대개념은 상수)

* 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)

728x90