open error txt file을 open 하고 .readlines()할때 문제가 발생한 것 같습니다. 그래서 찾아보니 UnicodeDecodeError : 'cp949'코덱은 위치 4에서 0xec 바이트를 디코딩 할 수 없습니다. 잘못된 멀티 바이트 시퀀스 조금 쉽게 이해 해보면 cp949(한글을 컴퓨터에 표시하는 방식(인코딩 방식) https://namu.wiki/w/CP949)을 다시 디코딩(컴퓨터-> 한글https://200301.tistory.com/9)하기힘들다 라는 말이었습니다. 즉, => txt 파일의 문자 인코딩 방식 차이로 인해 python이 인식을 하지 못합니다. python3 같은 경우 ASNI 기준으로 작성된 파일만 읽어온다고 합니다. (txt 파일이 UTF-8로 저장되어 있다..
.exe 파일(실행 파일) 만들기 exe 파일이란 (출처: https://bebesoft.tistory.com/27) 운영체제에서 소프트웨어 프로그램을 여는데 사용되는 실행 파일 프로그램 파일로 기계어 코드가 들어 있는 파일 입니다. 순서 1. window cmd & pyinstaller 설치 2. .py (소스파일) 이 있는 곳으로 이동 후 pyinstaller 사용 pyinstaller --onefile 소스파일이름 --onefile : 하나의 file로 만들어 준다. 3. dist에서 .exe이 만들어 졌습니다. 다음과 같이 확인하면 됩니다. :)
정렬된 데이터를 이진 탐색 할때 사용하는 파이썬의 라이브러리 from bisect import bisect_left, bisect_right left_index = bisect_left(array, value, low(범위), high(범위)) # (low(범위) ~ high(범위))내에 있는 값 left_index = bisect_left(array, value) right_index = bisect_right(array, value, low(범위), high(범위)) # (low(범위) ~ high(범위))내에 있는 값 right_index = bisect_right(array, value) bisect_left(left_index = bisect_left(array, val..
### defaultdict ### : dict() 에 list, int, set등 의 값을 기본값으로 장착 시켜주는 것 from collections import defaultdict #dict.values() => list d = defaultdict(list) d[1].append(1) print(d) # defaultdict(, {1: [1]}) #dict.values() => int d = defaultdict(int) d[1] = 1 print(d) # defaultdict(, {1: 1}) #dict.values() => set d = defaultdict(set) d[1].add(1) print(d) # defaultdict(, {1: {1}})
reverse() - list에서 제공하는 함수로 값을 반환하지 않는다. # list arr_n = [1, 2, 3] arr_w = ['a', 'b', 'c'] # reverse는 list에서 제공하며 값을 반환하지 않는다. => None print(arr_n.reverse()) #None print(arr_w.reverse()) #None print(arr_n) #[3, 2, 1] print(arr_w) #['c', 'b', 'a'] reversed() - 내장함수이다. #list arr_n = [1, 2, 3] arr_w = ['a', 'b', 'c'] print(reversed(arr_n)) # print(reversed(arr_w)) # print(list(reversed(arr_n))) #[3,..
문자열은 index로 확인을 할 수 있지만 변경은 할 수 없습니다. 그래서 list로 바꾼 후 변경을 해야 합니다. word = input() #입력 asdf -> 출력 'asdf' word[2] = ')' # 변경이 불가능 하다 word = list(word) word[2] = ')' # 변경이 가능하다 error 'str' object does not support item assignment ( 'str' 객체가 항목 할당을 support 하지 않습니다.)
### 덱(deque) ### :양쪽 끝에서 삽입과 삭제가 모두 가능한 자료 구조 (stack + queue) from collections import deque #deque 만들기(stack,queue를 합쳐 놓은 것) de = deque() #왼쪽에 값 추가 de.appendleft() #오른쪽에 값 추가 de.append() #왼쪽에 값 확장 de.extendleft() #오른쪽에 값 확장 de.extend() #값 삭제 de.remove() #맨 왼쪽값 출력 후 제거 de.popleft() #맨 오른쪽값 출력 후 제거 de.pop() #값 회전(오른쪽) de.rotate(1) #값 회전(왼쪽) de.rotate(-1)