Pythonic Code

geunyeongii·2022년 2월 6일
0

파이써닉 코드 정리

split % join

example = 'teamlab.technology.io'
subdomain, domain, tld = example.split('.')

colors = ['red','blue','green','yellow']
result = ' '.join(colors)

list comprehension

result = [i for i inrange(10) if i % 2 == 0]
>>>> resut
[0,2,4,6,8]

word_1 = "hello"
word_2 = "World"
result = [i+j for i in word_1 for j in word_2]

enumerate & zip

  • enumerate는 list추출 시 번호를 붙여서 추출 가능함
  • zip은 두 리스트를 병렬적으로 추출함
for i,v in enumerate(['tic','tac','toe']):
	# list안에 있는 index와 값을 unpacking
	print(i,v)

alist = ['a1','a2','a3']
blist = ['b1','b2','b3']
for a, b in zip(alist,blist):
	# 병렬적으로 값을 추출
    print(a,b)

lambda & map & reduce

  • lambda함수는 익명이며 이름이 없어서 함수를 간략하게 표현할 수 있는 좋은 표현이다. 맨 앞에 x는 파라미터로 받을 x이며, 그 뒤는 받은 파라미터 x를 어떻게 처리할지에 대한 코드이다.
  • reduce는 전체값의 합산을 구해주는 함수.
f = lambda x: x ** 2
	print(map(f, ex))

for i in map(f, ex):
	print(i)
    
from functools import reduce
print(reduce(lambda x, y: x+y, [1,2,3,4,5]))

generator

  • iterable object를 특수한 형태로 사용해주는 함수
  • element가 사용되는 시점에 반환을 해줌.
  • yield
def generator_list(value):
	for i in range(value):
    	yield i

asterisk

  • arg : 개수가 정해지지 않은 변수를 함수의 parameter로 사용하는 법
  • kwargs Parameter : 이름을 따로 지정하지 않고 입력하는 방법
def kwargs_test_3(one,two, *args, **kwargs):
	print(one+two+sum(args))
    print(kwargs)
    
kwargs_test_3(3,4,5,6,7,8,9,
			first=3, second=4, third=5)
            
profile
✏️세상의 모든 기록 ✏️

0개의 댓글