본문 바로가기

카테고리 없음

[파이썬] argv 명령행 인자와 getrefcount

- argv 명령행 인자


 argv를 이용하여 명령행의 인자를 전달 받을 수 있다.
예를 들어, test.py란 파이썬 파일을 실행한다면, python test.py abcd 라고 명령어를 쳐서 test.py와 abcd를 각각 인자로 넘겨 받을 수 있다는 뜻이다.
밑의 예제에서 argv의 0번째 인자로 파일명과 1번째 인자로 그 뒤 명령어를 전달 받았다.

import sys

print(sys.argv)
# ['data_type_basic.py', 'abc']
sy = sys.argv
print(sy[0])
# data_type_basic.py
print(sy[1])
# abc

참고로 python data_type_basic.py 111 222 333 으로 명령어를 수행하면
111, 222, 333 은 각각 1번, 2번, 3번 인덱스로 들어간다. (각각 sy[1], sy[2], sy[3]에 할당됨)

- getrefcount() 참조 개수 반환

import sys

testList = [10,20,30]
print(sys.getrefcount(testList))
# 2

getrefcount를 이용하여 리스트의 총 count를 반환 받을 수 있다. 총 3개의 인자가 들어있지만 0부터 시작하므로 2를 출력한다.