개발

    ubuntu  / npm run dev 에러 / svelte

    ubuntu / npm run dev 에러 / svelte

    ubuntu@:~/datalab/app/frontend$ npm run dev > svelte-app@1.0.0 dev /home/ubuntu/datalab/app/frontend > rollup -c -w /home/ubuntu/datalab/app/frontend/node_modules/rollup/dist/bin/rollup:1271 const SECOND_ROUNDING_EPSILON = 0.000_000_1; ^^^^^ SyntaxError: Invalid or unexpected token at Module._compile (internal/modules/cjs/loader.js:723:23) at Object.Module._extensions..js (internal/modules/cjs/l..

    fastAPI python 값을 js의 변수에 저장하기

    fastAPI python 값을 js의 변수에 저장하기

    이 작업을 할 때 주의할 점은, 1. json 형식으로 변환한다. 이는 str로 변환된다. 2. ensure_ascii = False 를 통해 유니코드 문자열을 그대로 사용할 수 있도록 한다. 이를 하지않으면 따옴표나 한글은 치환되어 엉망으로 처리가된다. 3. 따옴표를 맞춰야한다. 예를들어 dict에서 값을 쌍따옴표로 감쌌다면, 받는쪽에서는 다른 따옴표로 변수를 감싸야한다. # 넘길 데이터 result_data = {"날짜":"2022-01-01"} # 받을 때 let test = '{{ result_data|safe }}'; 4. js 쪽에서도 받아오는 데이터에 ' |safe ' 를 해주어 치환을 막아준다. 예시 코드이다. #----python ---- @app.get("/keyword/{keyword..

    파이썬 출력+로깅 같이하기 (파워쉘 Tee-Object)

    파이썬 출력+로깅 같이하기 (파워쉘 Tee-Object)

    파이썬에서 콘솔창에 출력도 하면서 로그 파일에도 저장되길 바랬다. 여러 방법을 써보았지만 만족할만한게 없었는데 다행히 찾게되었다. tee 도 되고 Tee-Object도 되는 것 같다. 파워쉘은 처음이라 많이 해맸는데 결국 공식문서가 짱이다.. Tee-Object 명령 출력을 파일 또는 변수에 저장하고 콘솔에 표시합니다. 구문 Tee-Object [-FilePath] [-InputObject ] [ ] Tee-Object -Variable [-InputObject ] [ ] 설명 Tee-Object cmdlet은 명령의 출력을 문자 "T"처럼 두 방향으로 forsenergy.com 내가 쓴 방법은 다음과 같다. 먼저 cd로 경로를 지정한 뒤 날짜를 불러와 저장하게 했다. $year 같은 경우는 숫자이기 때..

    멀티프로세싱/멀티스레딩 df 중복 관련 정리

    멀티프로세싱/멀티스레딩 df 중복 관련 정리

    이 말같지도 않은 코드를 기록하는 이유는 멍청한 실수를 방지하기 위함이다. 멀티~라는 것을 쓸 때에는 같은 자원을 참조하게끔 하면 예상치못한 결과가 발생하기 때문에 각자 자원을 쓸 수 있도록 장치가 필요하다. 멀티프로세싱으로 하면 df에 중복이 없고 멀티스레딩이나 그냥 for문으로 작동하면 중복이 생겼다. 중복제거를 하지않아도 중복이 없는 탓에 몇 시간 머리를 싸맸으나 테스트를 통해 이해를 하게되었다. 전역변수로 df 항목을 선언하였던게 문제였다. 멀티프로세싱으로 작업을 하게되면 같은 df를 쓰는게 아니라 프로세스 하나 마다 df를 새롭게 만들어서 사용하게 되는 것 같다. 따라서 이 df들을 concat해보면 중복이 없게된다. 아래는 테스트 코드이다. import pandas as pd from mult..

    pyqt로 file open, file save 할 때 인코딩 주의점

    pyqt로 file open, file save 할 때 인코딩 주의점

    우린 보통 파일 오픈할 때만 인코딩을 신경쓰게된다. 하지만 저장을 할 때에도 인코딩을 맞춰줘야 에러가 발생하지않는다. 왜냐하면 pyqt에서 제공하는 textedit 을 저장하면, 기본으로 ANSI로 저장되게 되는데, 이는 CP949로만 인코딩이 가능하다. 그냥 아무 옵션주지않고 할거라면 CP949로만 호출하면 되는데, 만약 UTF-8로 옵션을 줄거라면 저장할 때에도 UTF-8 옵션을 줘야한다. PYQT 내에서 저장한 파일 외 +@로 다른 파일을 불러올 계획이 있다면 꼭 UTF-8로 통일시켜야한다. 예를들어 메모장은 기본 인코딩이 UTF-8이기 때문에 바로 에러가 발생한다. 참고코드 def filesave(self): # 텍스트창에 써져있는 내용들을 저장함. txt한정으로 저장 FileSave = QFil..

    [python] PyQt5-tools 설치 에러 -> pyside2로 해결

    [python] PyQt5-tools 설치 에러 -> pyside2로 해결

    pyqt5 를 사용하려고 pyqt5를 install한 것 까지는 좋았지만 pyqt5-tools가 자꾸 에러가 나서 설치가 되지않았다. 원인을 모르겠다. 찾아보니 pip install pyside2로 해결할 수 있기에 pyside2를 설치하고 설치폴더로 가 designer를 구동하였다. C:\Users\사용자이름\AppData\Local\Programs\Python\Python310\Lib\site-packages\PySide2

    [파이썬] 요일 정렬하기 (무식하게)

    무식한버전.. a = ['매일 10:00~21:00'] b = ['금 10:30~20:00', '토 10:30~20:30', '일 10:30~20:30', '월 10:30~20:00', '화 10:30~20:00', '수 10:30~20:00', '목 10:30~20:00'] # print(len(b)) def weeks_sort(b): bc = [] if len(b) > 3 : for i in range(len(b)): if '월' in b[i]: bc.append(b[i]) for i in range(len(b)): if '화' in b[i]: bc.append(b[i]) for i in range(len(b)): if '수' in b[i]: bc.append(b[i]) for i in range(l..

    [파이썬] 윈도우 폴더 생성 os.mkdirs 특수문자 제거 정규식

    [파이썬] 윈도우 폴더 생성 os.mkdirs 특수문자 제거 정규식

    윈도우에서 폴더를 만들다보면 특수문자가 안되는 경우를 볼 수 있다. 따라서 파이썬에서 os.mkdirs 할 때 특수문자 제거가 필요하다. def createDirectory(keyword): #전체 특수문자 제거 keyword = re.sub(r'[-=+,#/\?:^$.@*\"※~&%ㆍ!』\\‘|\(\)\[\]\`\'…》]','', keyword) #또는 새폴더 불용 특수문자만 넣기 keyword = re.sub(r'[\/:*?">