it공부 (개념)/뻘글

12.31 python 공부

cantor 2022. 12. 31. 21:07

 

 

break vs continue

  1. break: loop 를 종료시킨다.
  2. continue: continue 이하의 나머지부분을 생략하고 다음loop로 넘어간다.

all vs any

  1. all(iterable): 대입된 값이 전부 ture 일경우에만 true를 반환한다.
  2. any(iterable): 대입된 값중true가 하나라도 존재할 경우에만 true를 반환한다.

etc

  • str.startswith(prefix[, start[, end]])
    string이 prefix에 해당하는 값들로 시작한다면 ture 그렇지않다면 false를 반환한다. prefix는 tuple을 받아줄 수도 있다.
                    example = "Hello World"
                    example.startswith("Hello") 
    
                    -> true
                    example.startswith(("World, Hello")) 
    
                    -> false
                    example.startswith(("hi", "Hello")) 
    
                    -> true
                    example.startwith(("World", "hi")) 
    
                    ->false
    
                
     
  • lambda [parameter_list] : expression 이름없는 함수를 정의하는 기능이다
                add = lambda x, y : x + y
                print(add(3, 5))
                print(add("hi", "hello"))
    
                출력결과 
                8
                hihello
                

    함수 생성기로도 사용이 가능하다
                    def make_adder(x):
                    return lambda y: x + y
                
                
                add3 = make_adder(3)
                print(add3(5))
                
                add5 = make_adder(5)
                print(add5(5))
                
                addh = make_adder("h")
                print(addh("i"))
                
                
                출력결과
                8
                10
                hi
                
    
                
  • iterator(반복자) 란 내부값에 순차적으로 반복하여 접근하는걸 허락하는 객체이다
    • 파이썬에서 list, dictionary, tuple string 등등이 iterator이다.
    • 만약 return값이 iterator인 함수는 list(iterator), dictionary(iterator)등으로 원하는 자료구조를 씌워줘야 일반적인 파이썬자료구조처럼 이용할 수있다.

filter vs map

  1. filter(function, iterable)
    fuction에 iterable 의 element들을 대입하여, ture값을 갖는 element만 선택하여 저장한 iterator 를 return한다
                    item for item in iterable if function(item)
                
    위의 코드와 같은 기능을 한다.
                    def check3(num: int) ->int:
                        return num % 3 == 0
                    
                    print(list(filter(check3, [1, 2, 3, 4, 5, 6])))
    
                    출력결과: [4, 6]
    
                
                
  2. map(function, iterable, *iterables)
    iterable의 element를 차례대로 function에 반복 대입하여 결과를 담은iterator 를 return한다
    • 만일 iterable 이 여러개가 있다면, function은 그 수만큼의 parameter를 가져야한다.
    • iterable의 길이가 다르다면, 가장 짧은 iterable의 길이가 function 실행횟수가 된다.
                    def add3(num: int) ->int:
                        return num + 3
    
                    print(list(map(add3, [1, 2, 3])))
                    
                    출력결과: [4,5,6]