티스토리 뷰

Coding

[python] 기초 문법(if문, 반복문, 함수)

Kim Da Beeen 2023. 10. 10. 17:05
반응형

프로그래밍 언어들의 기초문법이 비슷해서 파이썬도 이해하기 어렵진 않았다.

한 언어만 공부하고싶지만 현실은 그게 안되니...

그래도 다양한 언어를 공부할 수 있어 오히려 좋아!!

 

 

if 조건문

 

 

if 조건식 : 
  조건식 참일때 실행할 코드
else : 
  조건식이 거짓일때 실행할 코드

*조건식 안에는 보통 부등호, 등호, in문법이 들어간다

 

 

 

[부등호]

num = 10

if num >= 10 :
  print('num은 10보다 크다')

 

[in문법]

인사말 = ["하이", "바이", "헬로우"]


if "해이" in 인사말:
    print("해이 있음")
else:
    print("해이 없음")

 

 

[elif문] *python에서 else if를 축약한 키워드

x = 10

if x > 10:
    print("x는 10보다 큽니다.")
elif x < 10:
    print("x는 10보다 작습니다.")
else:
    print("x는 10입니다.")

 

 

 

 

 


 

for 반복문

 

반복문 사용하는 경우는 크게 두가지 이다.

1. 코드를 단순 반복할 때

2. List에서 자료 하나씩 출력하고 싶을 때

 

 

 

[코드 단순 반복할 때]

for 변수 in 범위 :
	반복하고 싶은 코드

 

for i in range(0, 10) :
  print('안녕하세요') //안녕하세요 10번 출력됨

 

 

 

 

[List에서 자료 하나씩 출력하고 싶을 때]

for 변수 in List 이름 :
	print(변수)

 

인사말 = ['하이', '헬로우', '바이']

for i in 인사말 : 
	print(i) //하이, 헬로우, 바이가 출력됨

*여기서 i는 인사말 리스트 안에 있던 하나하나의 데이터들

 

 

 

[응용문제 - 구구단 만들기 ]

for i in range(2,10) : //2단~9단
  print(f'{i}단'}
  for j in range(1,10) : //1~9까지 곱하기
    print(f'{i}*{j}={i*j}'}

* f-string : 문자열 앞에 f 또는 F 접두사를 붙이고 중괄호 { } 안에 변수 이름 또는 표현식을 넣어 사용

f-string을 사용하면 변수의 값을 쉽게 문자열에서 사용할 수 있다.

 

 

 

 

 


 

함수

 

 

 

1. 긴코드 짧게 축약할 때

def 함수이름작명() :
  축약할 코드1
  축약할 코드2

 

def 인사하기() : 
  print('안녕하세요')
  print('반가워요')

 

 

 

2. 함수에 파라미터 넣어서 사용할 때

def 함수이름작명(파라미터) : 
  print(파라미터)

 

def 모자(파라미터) :
  print(파라미터 + 1)
  
모자(1) // 2

 

 

 

3. 함수 실행 후 return

def 함수이름작명() : 
  return 남길자료
def 함수() :
  return 10
  
print(함수()) //10

 

 

 

[프로그래머스 - n의 배수]

정수 num과 n이 매개 변수로 주어질 때, num이 n의 배수이면 1을 return n의 배수가 아니라면 0을 return하도록 solution 함수를 완성해주세요.

def solution(num, n):
    if num % n == 0:
        return 1
    else:
        return 0

위의 코드는 일반적인 if문과 return문이고

삼항연산자를 사용하면 한줄로 요약할 수 있다

 

def solution(num, n):
	return 1 if num % n == 0 else 0

return 조건식 if 조건 else else 값

형태로 사용한다

 

 

 

 

[프로그래머스 - 길이에 따른 연산]

정수가 담긴 리스트 num_list가 주어질 때, 리스트의 길이가 11 이상이면 리스트에 있는 모든 원소의 합을, 10 이하이면 모든 원소의 곱을 return하도록 solution 함수를 완성해주세요.

def solution(num_list):
    if len(num_list) >= 11:
        return sum(num_list)
    elif len(num_list) < 11:
        result = 1
        for num in num_list:
            result *= num
        return result


print(solution([4,3]) //12
print(solution([2, 3, 4, 5]) //120

자바스크립트에서는 배열 안에 있는 모든 요소를 더해주는 함수가 없었는데

파이썬은 sum이라는 함수가 있어서 쉽게 더할 수 있었다 오 예

 

위의 코드를 삼항연산자math 모듈의 prod 함수를 사용하면 더 짧고 효율적인 코드를 짤 수 있다

from math import prod

def solution(num_list) :
	return sum(num_list) if len(num_list) >= 11 else prod(num_list)

print(solution([4,3]) //12
print(solution([2, 3, 4, 5]) //120

math 모듈을 사용하려면 꼭 math를 import 해야한다.

 

 

 

아직 완전 병아리 기초문법을 공부하고 있지만

sum, prod 같은 함수를 사용해보니 자바스크립트보다 더 편리하게 느껴진다

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함