리스트에 있는 문자열에서 원하는 개수 만큼 뽑아서 조합하는 예제입니다. 2022. 7. 12 최초작성 import itertools list_string = ['A0', 'A1', 'A2', 'A3', 'A4', 'A5'] _list = list(itertools.combinations(list_string, 4)) print(len(_list)) print(_list) 실행결과입니다. 리스트에서 문자열을 4개씩 뽑은 결과를 출력합니다. 15 [('A0', 'A1', 'A2', 'A3'), ('A0', 'A1', 'A2', 'A4'), ('A0', 'A1', 'A2', 'A5'), ('A0', 'A1', 'A3', 'A4'), ('A0', 'A1', 'A3', 'A5'), ('A0', 'A1', 'A4'..
지정한 경로에서 파일 내용을 검색하는 파이썬 예제 코드입니다. 지정한 경로의 하위 경로까지 확인합니다. 윈도우에서 파일 내용 검색을 쉽게 하는 방법이 없을까 고민하다가 만들어봤습니다. 2022. 7. 9 최초작성 import os, sys def get_files_from_path(path): files = [os.path.join(root, name) for root, dirs, files in os.walk(path) for name in files] return files path = sys.argv[1] keyword = sys.argv[2] files = get_files_from_path(path) for file in files: with open(file, encoding="UTF-8") ..
파이썬 딕셔너리에 함수를 추가해놓고 호출하는 방법을 다루고 있습니다. 터미널에서 파이썬 코드 실행시 사용한 인자에 따라 원하는 함수를 호출하도록 하기 위해 만들어봤습니다. 2022. 7. 9 최초작성 터미널에서 파이썬 코드 실행시 add가 인자로 주어지면 func_add를 실행시키고 sub가 인자로 주어지면 func_sub가 실행됩니다. 딕셔너리에서 값으로 함수 이름을 사용한 후, 호출시 괄호만 추가하니 함수처럼 동작하네요. import sys def func_add(a, b): return a + b def func_sub(a, b): return a - b function_name = sys.argv[1] func_dict = {'add' : func_add, 'sub' : func_sub} prin..
재귀적으로 서브 디렉토리 목록 및 서브 디렉토리별 파일 개수를 출력하는 파이썬 코드입니다. 2022. 5. 28 최초작성 import os path = './test' # 서브 디렉토리 목록 출력 for root, subdirs, files in os.walk(path): for d in subdirs: fullpath = root + '/' + d print(fullpath) print() # 서브 디렉토리별 파일 개수 출력 for root, subdirs, files in os.walk(path): if len(files) > 0: print(root, len(files))
Python에서 list에 원소를 추가할때 사용되는 append와 extend의 차이를 다루고 있습니다. 2022. 5. 28 최초작성 append와 expend 모두 list에 원소를 추가하는 방법이지만 원소를 추가한 결과에 차이가 있습니다. append 추가하려고 하는 대상을 그대로 리스트에 추가해줍니다. 리스트 객체를 하나 생성합니다. >>> L = [] append는 하나의 아규먼트만 허용하기 때문에 다음처럼 추가하면 에러가 납니다. >>> L.append(1, 2, 3, 4, 5) Traceback (most recent call last): File "", line 1, in TypeError: append() takes exactly one argument (5 given) append 사용..
파이썬 리스트에서 특정 값 또는 특정 문자 등의 개수를 세는 데 사용할 수 있는 방법입니다. 2022. 3. 3 최초작성 아래 예제는 리스트에 저장되어 있는 숫자별 개수를 출력하는 예제입니다. from collections import Counter numbers = [ 1, 5, 1, 2, 1, 3, 2] print(Counter(numbers).keys()) print(Counter(numbers).values()) # dict_keys([1, 5, 2, 3]) 리스트에 1, 5, 2, 3이 존재한다는 의미입니다. # dict_values([3, 1, 2, 1]) 리스트에 1이 3개, 5가 1개, 2가 2개, 3이 1개 있다는 의미입니다. 참고 https://stackoverflow.com/quest..
하위 경로에 있는 특정 확장자 파일의 목록을 리스트로 받아오는 Python 예제입니다. 2021. 9. 16 - 최초 작성 2022. 1. 2 - walk 추가, 실행 시간 측정 import os, glob import time start = time.time() # 하위 폴더는 어떤 것이 와도 상관없다는 의미에서 *를 추가합니다. files = glob.glob(os.path.join('./dogs-vs-cats/*/', '*.jpg')) print('glob') #print(files) print(len(files)) print(time.time() - start) print() start = time.time() files = [os.path.join(root, name) for root, dirs..
특정 경로의 파일 목록을 리스트에 저장하는 파이썬 예제 코드입니다. 2021. 12. 27 최초작성 다음 구조의 디렉토리를 생성한 후, 진행했습니다. 첫번째 버전 파일 이름 목록에 경로를 추가합니다. import os path = './root' for root, dirs, files in os.walk(path): if len(files) > 0: files.sort() for i in range(len(files)): files[i] = root + '/' + files[i] print(files) ['./root/ab/a/a1', './root/ab/a/a2', './root/ab/a/a3'] ['./root/ab/b/b1'] ['./root/cd/c/c1', './root/cd/c/c2', './..
파이썬 리스트에 저장된 모든 문자열에 똑같은 문자열을 결합하는 예제입니다. 2021. 12. 27 최초작성 number = [ '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'] print(number) number = [s + '월' for s in number] print(number) 실행결과 리스트의 숫자 뒤에 월이 붙게 됩니다. ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'] ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'] 참고 https://stackoverflow.com/quest..
range를 이용하여 2의 배수 저장된 리스트를 생성하여 넘파이 배열의 인덱스로 사용하는 예제입니다. 2021. 12. 6 - 최초작성 import numpy as np a = np.arange(10) print(a) idx = list(range(1,10,2)) print(a[idx]) 실행 결과 원본 넘파이 배열에서 짝수 인덱스 위치에 있는 원소만 가져와 새로운 넘파이 배열을 생성합니다. [0 1 2 3 4 5 6 7 8 9] [1 3 5 7 9]