ROKO

[Python] symbol summary 본문

Develop

[Python] symbol summary

RO_KO 2023. 4. 24. 14:00
728x90

* : args, **:kwargs

  • args는 가변인자들을 list형태로 input 받는다고 생각하면 쉽다.
  • kwargs는 가변인자들을 dict형태로 input 받는다.
def function1(*args):
	...
    
def function2(**kwargs):
	...
    

function1('a','b','c')
function2(a = 'a',b = 'b', c = 'c')

from [library] import *

  • library에서 모든 내용을 import한다는 의미이다.
  • 하지만 필요한 함수가 하나인 경우 그 함수명만 import하는게 최적화 면에서 좋다.
  • 불러온 함수들 중 하나와 내가 설정한 변수명과 충돌이 생길수도 있다.

function comment

  • python 함수작성시 용이한 주석을 소개한다.
def function(name : str) -> str:
	'''
    name을 string으로 받아 출력해주는 함수
    '''

	print(name)

name:str은 input type을 명시하고, -> str은 return type을 의미한다. return이 없을경우 None을 작성해도 된다.

함수 바로 아래 주석은 function.__doc__ 출력시 함수가 어떤역할인지 명시해준다.

 

'...' mean in python

def function():
	...

def function():
	pass
  • ...는 파이썬에서 Ellipsis라는 객체를 가진다. 생략부호라는 뜻으로 생략하거나 아직 구현하지 않는 부분을 위와같이 표현할 수 있다.
  • ... = pass

@ decorator

def thisisdecorator(func):
    def decorate():
        print(“start”)
        func()
        print(“end”)
    return decorate
    
@thisisdecorator
def hello():
    print(“hello”)
hello()

(출력 결과)
start
hello
end

위와 같이 사용할 수 있으면 단순 print뿐만이 아닌 다른 기능을 추가하여 설정할 수 있다. 다양한 함수에 반복적으로 사용해야 할 경우 유용하다.

 

% mean in python

  • string formatting
name = roko
integer = 1
float = 1.0
print("print %s, %dm %f" %(name, integer, float))

(출력결과)
print roko 1 1.0


print("print %s, %dm %f" %('roko', 1, 1.0))

(출력결과)
print roko 1 1.0

%% only in vscode

Jupyter notebook을 사용하는 많은 장점 중 하나는 line별 실행이다.

하지만 line별 실행을 python 파일로 변환하려면 logic을 수정해야하는 경우가 생긴다.

 

애초에 python파일로 작성하면서 중간중간 확인용으로 jupyter notebook shell 실행 기능을 쓰면 얼마나 좋을까

 

vscode에서는 %%를 사용하면 cell 단위로 실행하고 확인 할 수있다.

%%
print('hello')

%%
728x90

'Develop' 카테고리의 다른 글

[Mac] python 3.7 install error  (0) 2023.06.13
[Mac] vscode terminal branch info 설정  (0) 2023.05.07
How to install requirements.txt with conda  (0) 2023.04.18
[Pytorch] TensorboardX  (0) 2023.04.14
Comments