JavaScript에서 콘솔에 찍듯이 파이썬에서도 터미널에 찍어 볼 수 있다.
print("Hello, world!"); # Hello, world!
- 같은 블록 내에서는
들여쓰기
칸 수가 같아야 한다.공백
과탭
을 섞어쓰면 안된다.- 파이썬은 구문이 끝나고 다음 줄로 내려갈 때
세미콜론(;)
이 필요 없다.
세미콜론을 붙여도 에러는 나지 않는다. 여러 구문을 이어쓸때는 세미콜론을 쓰기도 한다.
a = 10 # a에 10을 넣는다.
b = 3 # b에 3을 넣는다.
print(a + b) # 13
print(a - b) # 7
print(a * b) # 30
print(a / b) # 3.3333333333333335 나누기
print(a % b) # 1 나머지
print(a // b) # 3 몫
print(a ** b) # 1000 제곱 = 10*10*10
# 비교연산자
print(a > b) # True
print(a <= b) # False
name = "yeti" # 변수에 문자열
num = 1 # 변수에 숫자
is_number = True # True 또는 False -> "Boolean"형
print(name + hobby) #yetipython
print(is_number) # True
# 리스트 안에 문자열, 숫자 섞여서 만들 수 있다.
a_list = ["사과", "망고", "배", "키위"]
print(a_list[0]) # 사과 = a라는 리스트의 0번째(첫번째) 값
a_list.append("체리") # 리스트에 "체리" 추가하기
print(a_list) #['사과', '망고', '배', '키위', '체리']
a_dict = {} # 빈 딕셔너리 만들기
a_dict = { "name": "예티", "age": 1} # 값을 채운 딕셔너리 만들기
print(a_dic["name"]) #예티
# AttributeError: 'dict' object has no attribute 'name'
# print(a_dic.name) //❌ 오브젝트에 접근할 때, Javascript처럼 이렇게 쓰지는 못함
# print(a_dic["name"]) //✅ 이렇게 [] 로 접근하는 것만 가능
age = 25
# 조건에 따라 코드 실행됨
if age >= 20: # age가 20 이상이면
print("성인 입니다.") # 조건이 참 일때 실행됨
else:
print("미성년자 입니다.") # 조건이 거짓 일 때 실행됨
# ✅ 프린트 결과
# 성인 입니다.
참고
- 파이썬은
괄호{}
가 없다.- 들여쓰기는
tab
으로 하면 된다.
if 조건1:
# ✅조건1이 참일 때 실행할 코드
elif 조건2:
# ❌조건1이 거짓이고 ✅조건2가 참일 때 실행할 코드
elif 조건3:
# ❌조건1과 ❌조건2가 모두 거짓이고 ✅조건3이 참일 때 실행할 코드
else:
# ❌❌❌위의 모든 조건이 거짓일 때 실행할 코드
elif
는 else if
의 줄임말로,
이전 조건들이 모두 거짓일 때 해당 조건을 검사하고,
해당 조건이 참일 경우에만 실행된다.
else
는 이전 조건들이 모두 거짓일 때 실행되는 블록이다.
조건문은 위에서부터 아래로 순서대로 검사되며, 첫 번째로 참이 되는 조건의 코드 블록이 실행된다.
x = 10
if x > 0:
print("양수입니다.") # ✅ x > 0 조건이 참일 때 실행
elif x < 0:
print("음수입니다.") # ❌ x > 0 조건이 거짓이고 ✅ x < 0 조건이 참일 때 실행
else:
print("0입니다.") # ❌ 위의 모든 조건이 거짓일 때 실행
# 결과 => 양수입니다.
파이썬의 반복문은 리스트의 요소를 돌아가면서 반복하는 형태로 쓰인다.
fruits = ['사과','배','감','귤'] # fruits라는 과일 값이 담긴 리스트
# fruits라는 리스트의 요소를 돌아가면서 반복할건데,
# 그 요소 중 하나를 fruit(단수형:sg)라고 하자.
# fruit는 순서대로 사과/배/감/귤 이 된다.
for fruit in fruits:
print(fruit)
# ✅ 결과
# 사과
# 배
# 감
# 귤
for 요소 in 리스트:
JavaScript의 Object 순회하며 반복하는 메서드랑 비슷... list긴 하지만
ages =[5, 10, 13, 23, 25, 9] # ages라는 숫자 값이 담긴 리스트
# ages라는 리스트의 각 요소인 age를 돌아가면서 같은 행위를 반복할 건데,
# 조건에 맞게 반복하여 값을 도출하라
for age in ages:
if age > 20: # (조건) age가 20보다 크다면
print(age, ": 성인입니다") # -> 조건이 True 면 실행
else:
print(age, ": 청소년입니다") # -> 조건이 False 라면 실행
# ✅ 결과
# 5 : 청소년입니다
# 10 : 청소년입니다
# 13 : 청소년입니다
# 23 : 성인입니다
# 25 : 성인입니다
# 9 : 청소년입니다
# 함수 선언
def 함수명(파라미터): # ✅ 함수를 선언(만들기)할 때는, 항상 뒤에 콜론(:)까지 쓸 것!
print(...) # ✅ 함수가 작동하는 코드는 항상 들여쓰기 해야 함!
return 반환 값
# 함수 호출
함수명(파라미터)
# 인사 출력하는 함수 만들기 (재료가 없는 함수)
def sayHi():
print("안녕하세요")
sayHi() # "안녕하세요"를 출력하는 함수 = 기계 sayHi() 작동 시키기
# a,b,c 라는 세 숫자를 더하는 함수 만들기
def sum(a,b,c): # 요리을 만들 때, 재료를 넣듯이 꼭 필요한 요소를 명시!
return a+b+c
# 함수 호출 및 변수에 저장
# 함수를 작동시키고 내보내는 결과물을 result라는 변수에 담는다
result = sum(1,2,3)
# 터미널에 result 변수 출력하기
print(result)
# 평균 구하는 함수
def average(numbers):
# total 변수 선언
total = 0
# 반복문: numbers 배열의 각 요소 number를 순회하며(반복) 로직을 실행해라
for number in numbers:
total += number
return total / len(numbers)
numbers = [1, 2, 3, 4, 5]
print(average(numbers)) # ✅ 3.0
numbers list의 각 number 요소를 순회하며, total += number를 실행하면
list를 모두 순회했을 때 total은 15
가 된다.
len()
은 문자열의 길이 반환하는 함수로, 리스트나 튜플 등에서는 그 안에 속한 값의 개수를 반환하므로 len(numbers) 은 5
이다.
따라서 total / len(numbers)
를 반환한 값은 15/5
로, 3
이 된다.