2020. 3. 16. 11:45

function definition

 

1. 제어문

2. 함수

3. 입출력

 

 

1. 제어문

if 문

  • 기본구조
    • if 조건문 1 : 
          수행할 문장 1
          수행할 문장 2
      elif 조건문 2 :
          수행할 문장 1
          수행할 문장 2
      else :
          수행할 문장 a
          수행할 문장 b

 

while문

  • 기본구조
    • while 조건문 : 
          수행할 문장 1
          수행할 문장 2
          수행할 문장 3
          if 조건문 1 :
              수행할문장 1
              continue
          if 조건문 2 :
              break

 

for문

  • 기본구조
    • for 변수 in 리스트|튜플|문자열 : 
          수행할 문장 1
          수행할 문장 2
          if 조건문 1 :
              continue
          if 조건문 2 :
              break
  • for문+ range( )
    • for 변수 range(시작숫자, 끝 숫자)
          수행할 문장 1
          수행할 문장 2
          if 조건문 1 :
              continue
          if 조건문 2 :
              break
  • 리스트내포 (list comprehension) : 리스트 안에 for문을 포함하는 것
    • a = [1,2,34]
      result = [num*3 for num in a] // [3,6,9,12]

 

2. 함수

  • 함수의 구조
    • def 함수이름(매개변수) : 
          수행할문장1
          수행할문장2
          return 결과값
  • 매개변수(parameter) : 함수에 입력으로 전달된 값을 받는 '변수'
  • 인수(arguments) : 함수를 호출할 때 실제 전달하는 입력'값'
  • 입력값이 몇개가 될지 모를때
    • 여러개의 입력값을 받는 함수 : 매개변수 앞에 * 을 붙이면 입력값을 모아서 튜플로 만든다
      • def 함수이름( * 매개변수) 
            수행할문장1
            수행할문장2
            return 결과값
  • 매개변수 초깃값 설정 // 초깃값설정시 맨 오른쪽 매개변수부터 차례대로 설정
    • def 함수이름(매개변수1, 매개변수2=값2) 
          수행할문장1
          수행할문장2
          return 결과값
  • 스코프 : 변수의 효력범위
    • 함수 안에서 사용할 변수의 이름을 함수 밖에서도 동일하게 사용하여도 함수 밖의 변수는 함수의 영향을 받지 않는다
    • 함수 안에서 함수 밖의 변수를 변경하는 방법
      • return 사용하여 결과값을 함수 밖의 변수에 할당
      • global 키워드 사용
  • 람다 : 함수생성시 사용하는 예약어로 함수를 매우 간단하게 생성하게 한다
    • lamda 매개변수1, 매개변수2, ... : 매개변수를 사용한 표현식 ( 반환값)
    • ex) add = lamda a, b : a+b; add(3,4) // 7
            or (lamda a,b : a +b)(3,4) // 7

 

3. 입출력

  • 사용자입력 : input( ) 
  • 프롬프트 출력 : print( )
    • 문자열 띄어쓰기 : print('aa', 'bb', 'cc') // aa bb cc
    • 한줄에 결과값 출력 : for i in range(10) : print( i, end=' ') // 0 1 2 3 4 5 6 7 8 9
  • 파일열기
    • 파일객체 = open(파일이름, 파일열기모드)
      • f = open('file.txt', r)
    • 파일열기모드
      • r : 읽기모드
      • w : 쓰기모드
      • a : 추가모드 (파일 마지막에 새로운 내용 추가)
  • 파일 객체 닫기 : f.close( )
  • 파일쓰기
    • f.write(data)
  • 파일 읽기
    • line = f.readline( ) // 파일의 첫번째 줄을 읽는다
    • lines = f.readlines( ) // 파일의 모든 줄을 읽어서 각각의 줄을 요소로 갖는 리스트 반환
    • data = f.read( ) // 파일의 내용 전체를 문자열로 반환
  • with 키워드
    • with 키워드를 사용하여 with 블록을 지정하고, 그 안에서 파일을 열고 작업한다. 이후 with 블록을 벗어나게 되면 해당 파일 객체를 자동으로 close( ) 한다
    • ex) with open("foo.txt", "w") as f :
               f.write("this is data")
           // 이후 with 블록 벗어나므로 자동으로 f.close 가 된다
Posted by yongminLEE