AI 보안 데이터 리터러시_파이썬의 자료형(1)

거부기·2022년 6월 9일
1

📊 KOCW

목록 보기
1/8
post-thumbnail

주피터 노트북

Enter : 수정 모드 (초록색)
ESC : 커맨드 모드 (파란색)

파일 이름 변경 : file → rename
파일 저장 : file → save and checkpoint

'Hello'
> 'Hello'

'World'
> 'World'

변수

변수는 한번에 하나의 값만 저장할 수 있습니다.
변수명은 알파벳, 숫자,_ (언더바)로 구성되며, 숫자가 제일 앞에 올 수는 없습니다.

a = 123
a
> 123
print(a)
> 123
type(a)
> int
b = 0.45
b
> 0.45
type(b)
> float
a = 123
b = 45
a,b
> (123, 45)
print(a,b)
> 123 45
a + b
> 168
a + b , a - b, a * b, a / b
> (168, 78, 5535, 2.7333333333333334)
a // b
> 2
a % b
> 33
b
> 45
b * b
> 2025
b ** 2
> 2025
b ** 10
> 34050628916015625
c = 'Hello'
c
> 'Hello'
d = 'World!'
d
> 'World!'
type(c)
> str
type(d)
> str
a
b
c
d # 제일 마지막만 출력됨
> 'World!'
print(a)
print(b)
print(c)
print(d) # 다 출력하고 싶을 때는, print()
> 123
> 45
> Hello
> World!
a, b, c, d
>(123, 45, 'Hello', 'World!')
print(a,b,c,d)
> 123 45 Hello World!
print(a + b)
> 168
print(c + d)
> HelloWorld!

리스트

리스트는 값을 여러 개 저장할 수 있습니다.
인덱스는 0부터 시작합니다.

자주 사용하는 리스트 함수
sum(): 합계
len() : 길이
max() : 최댓값
min() : 최솟값

a = [10, 20 ,30, 40, 50]
a
> [10, 20, 30, 40, 50]
print(a)
> [10, 20, 30, 40, 50]
type(a)
> list
sum(a)
> 150
len(a) # 길이, 개수를 확인할 수 있음
> 5
max(a) # 가장 큰 값 출력
> 50
min(a) # 가장 작은 값 출력
> 10
a[0]
> 10
a[1]
> 20
a[4] # 마지막 인덱스 숫자는 원소 개수-1
> 50
a[-1] # 끝에서 첫번째
> 50
a[-5]
> 10
a[1:3] # 범위 설정 가능
> [20, 30]
a[1:] # 앞을 공란으로 두면 범위가 처음부터 or 뒤에를 공란으로 두면 범위가 끝까지 설정된다.
> [20, 30, 40, 50]
a[:3]
> [10, 20, 30]
sum(a[:3]) # 인덱스도 리스트 함수 사용 가능
> 60
max(a[:3])
> 30
b = [100, 200, 300]
type(b)
> list
a
> [10, 20, 30, 40, 50]
b
> [100, 200, 300]
a +  b # 리스트 확장, a와b 자체가 변하지는 않음
> [10, 20, 30, 40, 50, 100, 200, 300]
c = a + b # 새로운 리스트 생성 
c
> [10, 20, 30, 40, 50, 100, 200, 300]
type(c)
> list
c.append(99) # 원소 추가 함수
c
> [10, 20, 30, 40, 50, 100, 200, 300, 99]
del c[1] # 개별 원소 삭제, 특정 위치
c
> [10, 30, 40, 50, 100, 200, 300, 99]
c.remove(200) # 개별 원소 삭제, 특정값을 가진 원소, 같은 값이 여러 개 일 경우, 제일 앞에 있는 값만 없어짐
c
> [10, 30, 40, 50, 100, 300, 99]
d = [10, 20, [30, 40, 50, 60]] # 리스트 안에 리스트
d
> [10, 20, [30, 40, 50, 60]]
len(d) # 내부 리스트는 하나의 리스트, 덩어리 값으로 인식
> 3
d[2]
> [30, 40, 50, 60]
len(d[2]) # 내부 리스트 길이
> 4
sum(d) # 리스트 안에 원소들이 하나의 개별적인 값들이여야 계산이 가능하다.

TypeError                                 Traceback (most recent call last)
Input In [78], in <cell line: 1>()
----> 1 sum(d)

TypeError: unsupported operand type(s) for +: 'int' and 'list'
max(d[:2]) # type이 맞으면 계산 가능
> 20
sum(d[2])
> 180

튜플

리스트와는 달리 값을 변경 및 삭제할 수 없음

a = [10, 20 ,30, 40, 50] # []는 리스트
b = (10, 20, 30, 40, 50) # ()는 튜플
type(a)
> list
type(b)
> tuple
a[0] = 100
a
> [100, 20, 30, 40, 50]
b[0] = 100

TypeError                                 Traceback (most recent call last)
Input In [94], in <cell line: 1>()
----> 1 b[0] = 100

TypeError: 'tuple' object does not support item assignment
del b[0] # 원소 추가와 삭제 다 불가능하다.

TypeError                                 Traceback (most recent call last)
Input In [95], in <cell line: 1>()
----> 1 del b[0]

TypeError: 'tuple' object doesn't support item deletion
sum(a)
> 240
sum(b) 
> 150
len(b)
> 5
max(b)
> 50
min(b) # 함수 사용 가능
> 10
b[0]
> 10
b[4]
> 50
b[-1]
> 50
b[-5]
> 10
b[1:3]
> (20, 30)
b[1:]
> (20, 30, 40, 50)
a[1:] # type를 찍지 않아도, 양끝에 모양으로 리스트인지 튜플인지 알 수 있음
> [20, 30, 40, 50]
b[:3]
> (10, 20, 30)
sum(b[:3])
> 60
b
> (10, 20, 30, 40, 50)
c = (100, 200, 300)
b + c # 튜플 확장, 튜플 자체는 변화하지 않음
> (10, 20, 30, 40, 50, 100, 200, 300)
d = b + c
type(d)
> tuple
e = ((10,20),[30,40,50]) # 튜플 안에 리스트와 튜플을 함께 넣을 수 있음
e
> ((10, 20), [30, 40, 50])
type(e) # 묶은 것 튜플이기 때문에 type도 튜플
> tuple
len(e) # 덩어리로 개수를 세기 때문에
> 2
e[0]
> (10, 20)
e[1]
> [30, 40, 50]
type(e[0])
> tuple
type(e[1])
> list
len(e[0])
> 2
len(e[1])
> 3
sum(e[0])
> 30
sum(e[1])
> 120
profile
느리지만 확실하게

0개의 댓글