반응형

파이썬 기본 문법 - lambda 익명함수

 

lambda 함수란

lambda는 익명함수라는 이름처럼 함수의 이름을 지정하지 않으며, 결과부분된 부분을 return키워드 없이 자동으로 return해줍니다.

lambda의 장점은 코드의 간결함 메모리의 절약이라고 생각할 수 있습니다.

예제1

sum = lambda a,b:a+b
print(sum(1,2))

data1 = ['hello', 'banana', 'day']
data1.sort(key=lambda sv:sv[0])
print(data1)

data2 = [1,2,3,4,5]
print(list(map(lambda d : d*10, data2)))

예제2

listdata = ['democratic', 'sequoia', 'equals','brrr','break','two']

# 문자열의 갯수를 기준으로 정렬
listdata.sort(key= lambda x: len(x))
print(listdata)
 
# 문자열의 마지막 문자를 기준으로 정렬
listdata.sort(key= lambda x: x[-1])
print(listdata)

반응형
반응형

파이썬 기본 문법 - Generator(제네레이터) - yield

 

Generator란

iterator를 생성해주는 함수로 함수안에 yield 키워드를 사용합니다. 
return은 함수를 종료를 시키지만, yield는 값을 반환하지만 종료시키지 않고 대기합니다. 
무한한 순서가 있는 객체를 모델링할 수 있습니다. 

 

예제

def generator(start, end):
    current = start
    while current < end:
        yield current
        current += 1

for i in generator(3,7):
    print(i)

반응형
반응형

파이썬 기본 문법 - 문자열 분리 & 합치기 - split(), join()

 

 

문자열 분리 split()

괄호 안에 아무 값도 넣어 주지 않으면 공백(스페이스, 탭, 엔터 등)을 기준으로 문자열을 나누어 줍니다. 괄호 안에 특정 값이 있을 경우에는 괄호 안의 값을 구분자로 해서 문자열을 나누어 줍니다. 이렇게 나눈 값은 리스트에 하나씩 들어가게 됩니다. 

 

아래 예제를 보겠습니다.

str1 = 'it is a good day'
data1 = str1.split(' ')

data2 = '2021/08/30'.split('/')

print(type(data1))
print(data1)
print(type(data2))
print(data2)

문자열 합치기(삽입) join()

문자열뿐만 아니라 리스트나 튜플도 입력으로 사용할 수 있습니다.

따옴표 안에 문자들을 분리할 문자열을 삽입할 수 있습니다.

 

아래 예제를 보겠습니다.

data1 = ['green',  'blue', 'yellow']
print(''.join(data1))
print('-'.join(data1))

print('/'.join('hello'))

 

반응형

+ Recent posts