[Python] Shell에 명령어 전달하기 🤔 Python에서 리눅스 쉘 커맨드를 실행하고 리턴 값을 받기 위해선 어떻게 해야할까? os.system os.system()에 전달된 명령어를 실행 결과는 콘솔에 출력됨 import os os.system("echo 'hello world'") $ python3 test.py hello world os.popen os.popen()에 전달된 명령어를 실행 결과는 콘솔에 출력되지 않고, 변수를 통해 받을 수 있음 import os a = os.popen("echo 'hello world'") print(a.read()) $ python3 test.py hello world subprocess subprocess를 이용해 쉘 커맨드를 실행 할 수 있음 impo..
[Python] 매개 변수와 람다(lambda) 표현식 매개 변수 (parameter) 함수에 입력으로 전달된 값을 받는 변수 인수로 전달된 값을 함수 내부에서 사용할 수 있게 해주는 변수 🔎 인수 (argument) 함수가 호출될 때 함수로 값을 전달해줌 매개 변수 사용 1. 입력값을 받아서 사용 def 함수이름 (매개변수): 수행 할 문장 return 리턴값 def sub(a, b): return a-b print(sub(7, 3)) 2. 입력받는 값이 몇개일 지 모를때 매개변수 이름 앞에 ' * ' 를 붙이면 입력값을 전부 모아서 튜플로 만들어 줌 def 함수이름 (*매개변수): 수행 할 문장 return 리턴값 def add_many(*args): result = 0 for i in args: r..
[Python] 민감 정보 분리하기 파이썬에서 데이터를 가져오거나 활용하려고 할 때, DB를 사용하는 경우가 많음 연동할 때 코드에 DB Host와 사용자의 Passwd를 적는 것이 불안하기도 했고, 매번 엔드포인트를 연결하려고 하니 귀찮은 점도 많았음 다양한 방법이 많은데, 여기서는 DB의 연결 정보를 Json 파일로 분리하는 방법을 사용 Json 파일 생성 db.json이란 파일명으로 json 파일을 생성 { "host": "my db host", "user": "my user", "passwd":"my password", "port" : "my db port" } ✔ 사용할 데이터베이스 정보를 넣어줘도 됨 모듈 Import config 파일이 있는 위치를 지정해주는 os 와 json 라이브러리를 i..
[Pandas] 데이터프레임 정렬하기 데이터 import pandas as pd df = pd.DataFrame([ [100,20,3], [1,200,30], [10,2,300]], columns = ['a','b','c'], index = ['A','B','C'] ) a b c A 100 20 3 B 1 200 30 C 10 2 300 1. 값 기준으로 정렬 (sort_values) sort_values 값을 기준으로 데이터를 정렬하는 메서드 컬럼 [a]를 기준으로 데이터 프레임 정렬 df.sort_values('a') a b c B 1 200 30 C 10 2 300 A 100 20 3 컬럼 [a]를 기준으로 내림차순 정렬 ✔ Default가 오름차순, ascending=False 을 사용해 내림차순..
[Pandas] 데이터프레임에서 대칭 차집합 구하기 앞 포스팅과 이어짐 https://heywantodo.tistory.com/42 [Pandas] 데이터프레임에서 차집합 구하기 [Pandas] 데이터프레임에서 차집합 구하기 앞 포스팅에 데이터 Pandas를 활용해 프레임을 비교하는 코드 작성 https://heywantodo.tistory.com/40 [Pandas] 데이터 프레임 비교하기 Pandas를 활용하여 데이터 프레 heywantodo.tistory.com A에는 없고 B에는 있는 항목을 뽑아내는 것 까진 했지만 B에는 있는데 A에는 없고, A에는 있는데 B에는 없는 항목을 어떻게 찾을까 고민 목표 A와 B사이 중복값을 제거하고 어디엔 없고 어디에 있는 값인지 식별하기 데이터 준비 df1 (기..
[Pandas] 데이터프레임에서 차집합 구하기 앞 포스팅에 데이터 Pandas를 활용해 프레임을 비교하는 코드 작성 https://heywantodo.tistory.com/40 [Pandas] 데이터 프레임 비교하기 Pandas를 활용하여 데이터 프레임 비교하기 Pandas 설치 pandas 설치 pip install pandas 라이브러리 import import pandas as pd 비교 데이터 : 학번 3000, 5000 학생의 성적이 다름 DataFrame1 : 2022년 학생 정보 df2022 = pd heywantodo.tistory.com 하지만 위와 같은 방법은 어느 한쪽의 데이터가 더 많을 경우에, 어떤 데이터프레임에 없고 어떤 데이터프레임에 있는 결과인지 분간하기 어려웠음 이리저리 찾..
들여쓰기 (Indentation) 코딩을 할 땐, 가독성을 위해서 들여쓰기를 함 특히 프로젝트를 진행할 땐 그라운드 룰을 수립하고 지키는 것이 굉장히 중요 파이썬에서는 들여쓰기를 하지 않았을 경우 IndentationError: unexpected indent 에러 발생 파이썬에서 코드 블럭을 구성하기 위해 if, for, class, def 등등 을 작성하면서 나오는 : 다음 아랫줄은 들여쓰기를 해야함 파이썬은 공백 2칸, 공백 4칸, 탭 문자 등을 각각 사용해도 동작이 잘 됨 중요한 것은 같은 블록 내에서는 들여쓰기 칸 수가 같아야 한다는 점 공백과 탭을 섞어쓰면 ❌❌❌ 아래는 4칸 공백을 사용한 예시 class Fourcal: def __init__(self,first,second): self.fi..
Pycharm : 파이썬 프로그래밍 언어에 특화된 컴퓨터 프로그래밍에 사용되는 통합 개발 환경 설치 https://www.jetbrains.com/ko-kr/pycharm/download/#section=windows PyCharm 다운로드: JetBrains가 만든 전문 개발자용 Python IDE www.jetbrains.com Pycharm 장점 파이썬 개발용 대표 IDE 무료 버전 사용 가능 라이브러리 설치가 간편 코드 실행과 테스트(디버깅) 간편 데이터 프레임 시각화 등 부가 기능 제공 Anaconda : conda는 패키지 및 환경 관리자, 파이썬과 R의 여러 패키지들을 묶어 놓은 배포판 데이터 사이언스와 머신러닝 분야에서 파이썬을 사용하기 위해 기본적으로 설치하는 배포판 설치 https://..