각 데이터를 효율적으로 다루기 위해 타입(type)으로 나눔
데이터 타입 | 설명 |
---|---|
정수(int) | 양의 정수, 음의 정수 (0,1,2,-1,-2 …) |
실수(float) | 0.03, 3.14232… |
문자열(float) | - 작은 따옴표나 큰 따옴표로 둘러싸인 문자 |
문자와 문자열을 구분하지 않음
“p”,”python3”,”3”
따옴표로 둘러싸인 것은 다 문자
변수란?
파이썬에서 자주 사용하는 값에 대한 이름표
변수(이름)을 통해 값에 접근할 수 있음
아이스크림 = 1500 이면, 아이스크림이라는 변수에 1500이라는 메모리를 할당한 것
그리고 이 때 아이스크림이라는 변수는 1500이라는 값의 위치를 바인딩 하는 것이다.
아이스크림 * 10 = 15000 , 이렇게 더 쉽게 코드 해석이 가능해짐
변수는 값을 바인딩 함
값이 메모리에 할당된 주소를 기억함
아이스크림 = 1500 이면,
id(아이스크림) , 140525831715600가 아이스크림의 주소
64비트면 0부터 2의 64승-1 까지의 메모리 주소를 가짐. (32비트면 32승)
a = 2
a = 4
print(a)
파이썬은 위에서 아래로 인터프리터함.
a는 원래 2의 값의 위치를 바인딩했지만, 4의 위치를 바인딩하게 됨.
이 때 2의 위치는 그럼 어떻게 되느냐?
- GC라는 garbage collector가 알아서 처리해줌
자료구조 | 예시 | 순서 | 수정 가능 |
---|---|---|---|
리스트(LIST) | [1,2,3] | O | O |
튜플(tuple) | (1,2,3) | O | X |
딕셔너리(dict) | {”사과”:2000, “배”:3000} | X | O |
리스트 = 기차, 좌석마다 번호 있지만 중간에 내리면 다른 사람이 탈 수 있음 = 수정가능
튜플 = 비행기 , 좌석을 다른 사람에게 줄 수 없음.
딕셔너리 = 데이터가 여러개 일때 여러 정보를 저장할 수 있는 데이터,
아이스크림 = ["구구콘","메로나","비비빅"]
print(아이스크림[0])
#구구콘
인덱싱은 값을 가져오는 것
아이스크림 = ["구구콘","메로나","비비빅"]
print(아이스크림[0:2])
# "구구콘" "메로나"
학교 청소시, 1번부터 5번까지 테니스장 청소 해주세요 ~
리스트나 튜플은 순서가 있으니 특정 범위에 있는 값들을 가져올 수 있음.
주의점은 슬라이싱은 머리 위에 붙은 값이 아니라 사이사이 값을 의미함.
그래서 0:2 , 0부터 2면 비비빅 까지 아니라 0구구콘1메로나2비비빅3 이므로,
“구구콘”, “메로나”가 출력됨.
# "포 아이 인" 리스트 / 리스트 안에 있는 값 i에 대해서 라는 뜻!
for i in list:
수행할 문장 1
수행할 문장 2
...
카트 = ["과자","음료수","과일"]
fot i in 카트:
print(i)
#카트 안에 있는 각각의 아이에 대해서, 아이를 프린트 해라.
카트 = ["과자","음료수","과일"]
fot i in 카트:
print(i)
#sudo 코드
for i in 카트:
print(i)
# i는 카트 안의 변수, 카트 안의 i에 대해서 프린트 해라 => "과자"
# 반복문 이므로 다시 위로 돌아감. i는 음료수 바인딩. => "음료수"
# 다시 돌아감 => "과일"
# 다시 올라갔는데, i가 바인딩할 값이 더이상 없으면 for문이 종료됨.
# "과자" "음료수" "과일"
num = 0
while num<5:
print(num)
num = num + 1
먼저 조건에 사용될 값 초기화, num은 0
num은 5보다 작으니 print 되고, num = num+1 이므로 1이된다.
4까지 반복적으로 수행됨.
중요한 것은 이 때 num = num + 1이런 값을 넣어주지 않으면 무한으로 식이 반복됨.
출력은 0,1,2,3,4가 됨.
num = num + 1은 num += 1과 같은 식임.
동영상 강의를 토대로 정리했습니다.
궁금한 점은 댓글 남겨주세요!