오늘부터 이틀간 자료구조와 흐름제어에 관해 배울 예정이며, 오늘은 자료구조까지만 배울 수 있었다.
기존에 파이썬 공부를 한 상태라서 크게 어렵진 않았지만 기초를 다지는 것이 가장 중요하다고 하셨기에 상세히 기록하려고 한다.
> 변수
a = 1
b = "python"
c = [1, 2, 3]
helloWorld = "Hello World!"
helloWorld
hello_world = = "Hello World!"
hello_world
x = 100
y = 100
x is y
> False # 값은 같지만 x, y의 메모리 주소가 같지 않아 False!
x == y
> True # 메모리 주소는 다르지만, 값이 같아 True!
상수
import enum
class Rainbow(enum.Enum):
Red = (enum.auto(), 0)
Orange = (enum.auto(), 1)
Yellow = (enum.auto(), 2)
Green = (enum.auto(), 3)
Blue = (enum.auto(), 4)
Navy = (enum.auto(), 5)
Purple = (enum.auto(), 6)
Rainbow.Red.name
> 'Red'
Rainbow.Red.value[1]
> 0
RAINBOW.RED.name = 'GREEN'
> Error 발생 # 상수로 지정한 name을 'GREEN'으로 변경하려고 했기 때문
'Red' in Rainbow.__members__
> True
'Black' in Rainbow.__members__
>False
자료형
어떤 프로그래밍 언어든 "그 언어의 자료형을 알고 이해할 수 있다면 이미 그 언어의 절반을 터득한 것이나 다름없다"는 말이 있다.
자료형이란 프로그래밍을 할 때 쓰는 숫자, 문자열 등 자료 형태로 사용하는 모든 것을 뜻한다. 프로그램의 기본이자 핵심 단위가 바로 자료형이다.
a = 1
b = 1004
c = -100
type(a)
> int
a = 3.14
b = 0.12
c = 4.23E3 # 컴퓨터식 지수 표현 방식으로 E3은 10^3을 의미한다.
c
> 4230.0
d = 4.23e-3 # 컴퓨터식 지수 표현 방식으로 E3은 10^-3을 의미한다.
d
>0.00423
type(a)
> float
a, b = 3, 4
a + b #더하기
> 7
a - b #빼기
> -1
a * b #곱하기
> 12
a / b #나누기
> 0.75
a ** b #제곱
> 81
7 & 3 #나머지 연산
> 1
7 // 3 #몫 연산
> 2
a = "Hello World"
b = 'hello world'
type(a)
> str
a = 'I'm a student'
b = "He said "Hi""
\n: 문자열 안에서 줄을 바꿀때 사용
\t: 문자열 사이에 탭(Tab) 간격을 줄 때 사용
\\: 문자'\'를 그대로 표현할 때 사용
\' & \": 작은 따옴표와 큰 따옴표를 그대로 표현할 때 사용
# 문자열 더하기
a = "Hello"
b = "World"
a + b
> Hello World
a * 5
> HelloHelloHelloHelloHello
a = "Hello World!"
a[0]
> H
a[-1] # -숫자의 의미는 뒤에서부터 숫자번째 값을 의미한다.
> !
a = "Hello World!"
a[:4]
> Hell
a[6:]
> World!
# 변수명[시작:끝:간격] (간격은 생략 가능)
a[0:-1:2]
> HloWrd
# 첫 번째 방법
print("I eat %d apples." %3)
> I eat 3 apples.
# 두 번째 방법
number = 10
day = "three"
print ("I ate %d apples. so I was sick for %s days." % (number, day))
> I ate 10 apples. so I was sick for three days.
# 세 번째 방법 (가장 추천)
print("I eat {} apples.".format(3)
> I eat 3 apples.
# 네 번째 방법
number = 10
day = "three"
print(f"I ate {number} apples. so I was sick for {day} days.")
> I ate 10 apples. so I was sick for three days.
a = "Hello world"
a.count('l')
> 3
len(a)
> 11
a.find('w')
> 6
",".join(a)
> 'H,e,l,l,o, ,w,o,r,l,d'
a.split(" ") # " "을 기준으로 나누기
> ['Hello', 'world']
a.upper()
> 'HELLO WORLD'
a.lower()
>'hello world'
b = " Hi "
b.strip()
> 'hi'
b.lstrip()
> 'hi '
b.rstrip()
> ' hi'
a.replace("world", "King")
> 'Hello King'