본문 바로가기

Python

(89)
[python] list에서 중복되는 원소 지우기 python에서 리스트를 사용하다보면 안에 중복된 데이터를 지우고 싶을때가 있다. 루프를 돌면서 하나하나 비교해가면서 지우는 방법말고 다른 방법이 있나 찾아보니 아래와 같은 방법을 통해 중복되는 원소를 쉽게 지울 수 있다. 1. set 함수를 이용해서 중복제거 >>> data = [1, 2, 2, 3, 3, 5] >>> data [1, 2, 2, 3, 3, 5] >>> set(data) {1, 2, 3, 5} >>> list(set(data)) [1, 2, 3, 5] python의 set(집합) 함수를 사용하면 리스트 내의 원소들을 unique한 값만 뽑아서 반환한다. 다만 반환 데이터가 set 함수의 형태이기 때문에 이를 list 형태로 변환해줘야 한다. 2. dict.fromKeys함수를 이용해서 중..
[python] pycache, pyc 캐시 데이터 삭제 명령어 in linux 파이썬 개발을 하다보면 cache 데이터가 지저분하게 쌓이는 경우가 많다. git에서는 gitignore 파일에 등록하면 되지만 그렇다고 캐시데이터를 지워주는 것은 아니다. 리눅스에서는 보통 아래 명령어로 캐시를 삭제할 수 있다. 프로젝트 루트에서 아래 명령어 수행 find . | grep -E "(__pycache__|\.pyc|\.pyo$)" | xargs rm -rf 그러면 __pycache, pyc, pyo 관련 파일들을 일괄 삭제할 수 있다.
[python] 파이썬으로 윈도우 cmd 명령어 수행하기 파이썬 스크립트에서 중간에 윈도우 CMD 명령어를 수행하고 싶다면 어떻게 해야할까? 보통 아래와 같이 두가지 방법을 사용한다. 1. os.system >>> import os >>> os.system('cd') C:\Python27 0 >>> os.system('dir') C 드라이브의 볼륨에는 이름이 없습니다. 볼륨 일련 번호: 3C-44 C:\Python27 디렉터리 2020-04-12 오후 08:11 . 2020-04-12 오후 08:11 .. 2020-04-12 오후 08:11 DLLs 2020-04-12 오후 08:11 Doc 2020-04-12 오후 08:11 Tools 5개 파일 671,023 바이트 10개 디렉터리 31,853,121,536 바이트 남음 os 모듈을 임포트해서 system ..
[python] 파이썬으로 리눅스 쉘 명령어 수행하기 파이썬 스크립트에서 중간에 리눅스 쉘 명령어를 수행하고 싶다면 어떻게 해야할까? 보통 아래와 같이 두가지 방법을 사용한다. 1. os.system >>> import os >>> os.system('pwd') /root 0 >>> os.system('ls') docker elk_test hs_err_pid28828.log kibana python_test spark-2.4.5-bin-hadoop2.7.tgz 0 >>> os.system('touch a') 0 os 모듈을 임포트해서 system 함수를 사용하여 리눅스 명령어를 수행한다. 파이썬을 수행하는 환경에 명령어를 전달하여 수행한다. os.system은 인자값으로 명령어만 전달해주면 수행해주기 때문에 직관적이나, 명령어의 결과값들을 변수에 저장할 수..
[python] 문자열 포맷팅 (str.format)에서 중괄호{} 출력하는법 문제 상황 1 2 3 name ='limcode' print(f"Hello {name}, You can use {string variable} in the code") Colored by Color Scripter cs 위 코드는 파이썬의 문자열 포맷터를 사용하여 변수를 문자열 안에서 손쉽게 쓸 수 있는 방법이다. 원래 원하는 동작은 아래와 같이 "Hello limcode, You can use {string variable} in the code. 문자열을 출력하는 것이다. 하지만 코드를 수행하면 아래와 같은 메시지가 뜨면서 출력이 실패한다. File "", line 1 (string variable) ^ SyntaxError: invalid syntax > 문자열 포맷터 방식에서 중괄호를 특수한 값으..