파이썬28 [파이썬] 폴더 크기 구하기 파이썬으로 이것저것 만들고 공부 중입니다 ^^ 얼마 전에 C 드라이브 하드디스크 공간이 없길래, 좀 더 자세히 알고 싶기도 하고 공부 삼아 만들어 봤습니다 (이미 폴더 크기 구하는 프로그램들이 많음에도 ~) 프로그램은 간단합니다. 실행하면 폴더(하위 포함) 크기를 구하고 싶은 드라이브나 폴더를 입력하고 Run 해 주면 됩니다. 결과는 엑셀 파일로 만드는데요 그림처럼 폴더와 파일 2개의 sheet 를 만들고 각 sheet 에 폴더 크기와 파일 크기 역순으로 10,000 개씩 기록 합니다 (너무 많으면 엑셀 파일에 쓰다 죽기도 해서 만개로 제한) 프로그램 코드는 아래와 같습니다 import operator import sys import os from PyQt5.QtWidgets import * import.. 2017. 12. 30. [파이썬] 리스트/딕셔너리 정렬하기 파이썬 리스트와 딕셔너리 간단한 정렬 예제입니다. (나중에 찾기 위해 기록) 리스트는 기본적으로 sort 라는 함수를 가지고 있지만 딕셔너리는 sorted 의 힘을 빌려야 합니다. data2 = sorted(data.items(), key=lambda x: x[1][0], reverse=False) sorted(1st pmt, 2nd pmt, 역순 여부) 1st 인수에 있는 항목들을 하나씩 꺼내서 두 번째 lambda 함수에 파라미터 x 로 대입하고 정렬하는 방식입니다. x[1][0] --> data.items[1][0] 이 되고 아래 예제에서 data.items[1] 은 (key: value) 의 value 에 해당하고 data.items[1][0] 은 결국 value를 이루는 투플의 첫번째 항목이 되.. 2017. 12. 11. [파이썬] Creon Plus 를 이용해서 KOSPI200 종목 시세 가져오기 목적: CREON PLUS API를 이용해서 KOSPI200에 소속된 200 종목의 현재가 정보를 가져온다가져온 데이터를 Pandas DataFrame 에 저장하고, 엑셀로도 내 보낸다. 예제를 위해 공부가 필요한(or 필요했던) 항목들CREON PLUS API (증권 시세/주문/계좌 정보 가져오기 위해 필요)판다스(PANDAS), DATAFRAME 개인적으로는 파이썬의 Pandas/DataFrame 을 좀더 공부하고 싶어서 만든 예제입니다 아직 실시간 부분은 처리하지 못했는데 요건 담번에 추가 예정입니다 실시간 시세 받아 업데이트도 됩니다. 엑셀로 저장한 데이터 전체 코드 (실시간은 아직 미 구현 실시간도 구현됨)import sys from PyQt5.QtWidgets import * import wi.. 2017. 10. 15. [파이썬] 안드로이드 프로젝트에서 자바 클래스 레퍼런스 카운트 구하기 요즘 파이썬으로 공부하면서 그동안 필요했던 기능들을 파이썬으로 구현중인데, 배운 지 얼마 안됐지만 파이썬 언어 자체가 정말 매력적이네요 C++ 과는 비교가 안될 정도로 코딩량도 적고 로직에 집중할 수 있어 좋은 듯. 예제 코드의 목적 안드로이드 프로젝트가 커지면서 사용하지 않는 클래스가 점점 늘어남, 다른 파일에서 호출하지 않는 클래스를 찾기 위해 만듦 1. 모든 파일에서 클래스 이름을 찾아 저장 (한 파일에서 하나의 public class 만 있다고 가정) 2. 다시 모든 파일을 단어 단위로 읽어 '1' 에서 저장한 클래스 이름이 있으면 ref count 를 증가 시킴. (단, 클래스가 선언된 파일은 ref count 에서 제외 3. 참조하는 파일 리스트도 저장 4. csv 로 저장할 수 있도록 ','.. 2017. 10. 14. [파이썬] 폴더 명 일괄 변경 예제 예전에 찍은 사진 중 폴더의 날짜 표기를 변경할 대상들이 많아 일괄 변경하기 위해 만든 코드 (주의: 코드 참고용으로 작성하여 범용적이지 않음) 목적: 주어진 폴더 내에서 폴더 이름의 일자표기가 20031025__**** 인 폴더를 찾아 2003-10-25_**** 로 일괄 변경 코드 import os # 20031025_삼천포대교앞 --> 2003-10-25_삼천포대교앞과 폴더 이름 변경 path = "H:\\5. 사진\\" for fname in os.listdir(path) : fullpath = path + fname if os.path.isdir(fullpath) == False: continue if len(fname) < 8 : continue fpre = fname[:8] fpost = f.. 2017. 10. 11. [파이썬] 주어진 폴더 파일/크기 비교 예제 사진과 동영상을 백업받을 새로운 하드를 장만하면서 약 10만개가 넘는 사진을 두 하드에 복사하다가, 필요해서 만든 간단한 폴더 비교 샘플입니다 (주의: 파일 자체의 내용까지 비교 해주는 좋은 사용 툴이 있지만, 바이너리 파일 비교는 너무 오래 걸려 파이썬 공부 목적으로 만든 참고용 예제임) 목적: 주어진 폴더 2개를 비교 동일한 파일(파일 이름과 크기만 비교), 한쪽에만 있는 파일, 오른쪽에만 있는 파일 리스트를 구한다 프로그램 코드 import os # 주어진 folder 2개를 look up 한 후 # 파일 이름/사이즈까지 비교 path1 = "H:\\5. 사진\\" path2 = "G:\\5. 사진\\" # key: full path value: filename, folder/file, file s.. 2017. 10. 11. 파이썬 기본 - 리스트/딕셔너리/튜플/set 기본 사용법 파이썬 문법은 C++ 과 상당히 유사합니다 특히 파이썬의 리스트와 딕셔너리는 STL 의 vector 와 map 을 상당히 많이 닮아 C++ 에 익숙하다면 익히는 데 별 어려움이 없이 적응이 가능해서 좋습니다 아래는 간단한 리스트와 딕셔너리에 대한 샘플 코드입니다 리스트는 [], 딕셔너리는 {}, 튜플은 () 로 선언한다는 것도 유의! (자세한 설명은 생략합니다 ^^) 1. 리스트 # list 테스트 def listTest(): # 초기화 codeList = ["A003540", "A005930","A066570"] size = len(codeList) print("list ->", codeList) # 추가 codeList.append("A000660") size = len(codeList) print(.. 2017. 9. 26. 파이썬 개발 환경 구축 하기 파이썬 개발 환경 구축 관련 간단하게 정리~ 아나콘다 설치 설치 주소: https://www.anaconda.com/download/ 32 비트 또는 64 비트 (증권사 API 개발한다면 32 비트 필요) 설치 위치는 기본 user/~ 밑에 설치 되는데, 개발 툴을 특정 위치에 설치를 선호한다면 다운로드 패스를 지정한다 (물론 이처럼 설정 할 경우 추후 SDK PATH 지정시 변경이 필요) 파이썬용 IDE 설치PyCharm 설치 주소: https://www.jetbrains.com/pycharm/download/Community Free 버전 선택 원하는 테마 선택(Visual Studio 가 편하다면 키보드 설정을 VS 로)아나콘다 패스 지정해 주기(아나콘다를 다른 폴더에 선택 한 경우) PYQT5 설.. 2017. 9. 25. 이전 1 2 다음