반응형 전체 글261 anaconda + python 완전히 지우는 방법. 불가피하게 환경을 깨끗하게?!지우고 다시 셋업해야한다면.. 어떻게 파이썬(Anaconda)을 깨끗하게 제거하나요? 🧹 Step 1: Anaconda 완전 제거시작 > 제어판 > 프로그램 추가/제거Anaconda 를 찾아서 제거합니다.제거 후, 다음 경로도 수동 삭제:C:\Users\\Anaconda3\C:\Users\\.conda\C:\Users\\AppData\Local\Continuum\C:\Users\\AppData\Local\anaconda3\📌 위 경로는 직접 탐색해서 삭제해 주세요 (숨김 폴더 포함됨)🧼 Step 2: PATH 환경변수 확인시작 > 시스템 환경 변수 > 환경 변수시스템 PATH에 Anaconda 관련 경로가 남아있다면 모두 삭제:예: C:\Users\\Anaconda3,.. 2025. 3. 22. 없어져라! SSL 문제 해결을 위한 실전 대응 북 아...x치겠다..SSL 오류는 진짜 말없이 멈추고, 또 어디가 문제인지 분명하지 않아서 정말 스트레스 포인트.크아아아아아아아아아아아아아아아아아아아아아아아아 SSL 오류 종류들:csharp복사편집[SSL: WRONG_VERSION_NUMBER] [SSL: ENCRYPTED_LENGTH_TOO_LONG] [SSL: DECRYPTION_FAILED_OR_BAD_RECORD_MAC] → 공통점: 인터넷은 연결되지만, 암호화 프로토콜(TLS/SSL)에서 handshake 실패 ✅ 2️⃣ 가장 많이 해결되는 방법 (순서대로 해보자) 중간에 어디서 해결될지 나도 몰라.🔸 (1) 환경변수 프록시 제거python복사편집import os os.environ.pop("HTTPS_PROXY", None) os.envi.. 2025. 3. 16. random.choice()와 random.shuffle()은 비슷해 보이지만 목적이 완전히 다르다 ✅ 핵심 차이 요약 함수 이름 / 설명 / 목적random.choice(list)리스트에서 단 하나의 항목 무작위 선택"하나만 고를 때"random.shuffle(list)리스트 항목 전체 순서를 랜덤 섞음 (in-place)"여러 개를 모두 무작위 순서로 쓰고 싶을 때"✅ 왜 random.shuffle()을 쓰는가?사용하려는 목적 예시.get_random_audio_from_drive_path() 안에서 mp3 파일 리스트를 가져온 후**"재생 가능한 파일을 먼저 찾고 그 중 하나를 고르려는 구조"** random.choice(files):python복사편집selected = random.choice(files) ➡ 파일 리스트가 순차일 경우, 항상 choice()가 처음 항목만 선택할 가능성 ↑(.. 2025. 3. 15. Preload + On-demand + Fallback 구조 (캐싱전략에 관하여, 용어설명) 메모 Preload + On-demand + Fallback 구조란? 이 세 가지는 캐시(다운로드) 전략을 단계적으로 설명하는 개념. 각각 하나하나씩만 사용해도 괜찮다. 필요시 중복으로 도입해서 조립하시라. 도입배경: 프로젝트마다 다르겠지만, mp3를 다운로드 받아 실행하는 프로그램을 만들고 있는데, mp3파일을 구글드라이브에서 다운로드 받는것이 매번 대기시간처럼 불편하게 느껴짐. 단, 캐싱구조 없이 즉지 다운로드 방식으로 먼저 전체 구조를 검토한 뒤에 캐싱전략을 도입할 단계가 되어서 고민하게 됨. 본인은 전체 구조를 완성 한 뒤에 세부구조나 확장을 하는 스타일이라서 그렇게 된 듯. 캐싱구조는 익숙하지가 않아서 보통 나는 위 세가지중 단일 전략만을 주로 사용해왔었는데, 이유는 내가 프로그램을 실행하고 .. 2025. 3. 12. python - API 연동할 때, 인증코드를 모듈마다 넣는 이유..가 있었다.. 무식해서 그런게 아니라규..ㅠ 그냥, 개발하다보면 전체적인 흐름을 우선시하다가 위와 같은 인증코드랄까, 라이브에서는 중복으로 넣으면 안될것 같은 코드들을 모듈마다 넣는 나 자신을 발견할 때가 있다. 누가 물어본다면 속 시원하게 멋지게.. 설명할 자신은 없었지만 일단 이게 괜찮은 것 같기도하고(나중에 리펙토링 하면 되니까, 난 알고있으니까 그대로 놔두면 안된다는 것을..!!) 여튼 걍 궁금해서 gpt에게 물어봤따... 그 녀석의 답은.. 시원했다. (일반적인 케이스에서의 관점) 위 코드가 중복으로 들어가는 이유1. 각 모듈이 독립적으로 사용할 수 있도록 하기 위해 보통 drive_service를 자체 선언합니다.예: drive_audio_loader.py 단독 테스트도 가능하게.간단한 스크립트 구조에서는 종종 코드 복사를 우선2. 작.. 2025. 3. 11. 구글드라이브에서 API로 파일 탐색을 할 때, 어떻게 하는게 더 효율적일까? feat ChatGPT 문제: 구글시트에서 구글드라이브의 경로가 적힌 문자열을 읽어서 구글드라이브의 폴더를 찾고, 하위폴더 포함하여 mp3파일을 모두 검색한 뒤 랜덤으로 하나를 선택해야하는 조건. 이 동작은 경로를 바꿔가면서 계속 수행해야함. 즉 단일성 이벤트가 아닌 것을 고려. 스프레드시트에 있는 경로: '공유문서함/share/music/ost' 두가지 탐색 방법이 GPT와 대화해본 결과 ..나왔다. [ Google Drive 경로 문자열 기반 탐색]첫번째는 경로의 가장 하위( 위 예제에서 ost)의 폴더 아이디를 찾아 그 아이디로부터 하위 폴더를 탐색함. (*폴더 아이디는 주소표시줄에 있긴한데, API로도 얻을 수 있더라) 동작:share 폴더 검색 → ID 획득해당 ID 기준으로 music 폴더 검색 → ID 획득.. 2025. 3. 11. Pygame에서 나오는 모든 소리를 하나의 파일(wav)로 저장하는 방법 여러 소리를 동시에 나오게 하려다보니 pygame.mixer.Sound() 를 사용해야하고 , 다시 그 소리들을 하나의 파일로 저장해야할 때. 오디오 출력을 캡처하여 파일로 저장해야한다고 함. 오디오 출력을 캡처하기위한 sou nddevice와 numpy를 활용해서 시스템 오디오 출력을 녹음해보자. 필요한 라이브러리pip install sounddevice numpy scipy pygame 예제코드 (단일채널을 사용하는 경우)import pygameimport sounddevice as sdimport numpy as npimport scipy.io.wavfile as wavimport threadingimport time# 녹음 설정SAMPLE_RATE = 44100 # 표준 샘플링 레이트 .. 2025. 3. 10. threading.Event() 객체의 활용 예제 및 백그라운드 실행 정리 1. threading.Event() 객체의 사용 🎯 threading.Event()란?threading.Event()는 스레드 간의 동기화를 도와주는 객체 스레드가 특정 이벤트(신호)를 기다리도록 만들고, 다른 스레드가 신호를 보내서 진행을 제어할 수 있음.🎯 threading.Event()의 주요 기능event.set() → 이벤트 신호를 발생(켜기)event.clear() → 이벤트 신호를 리셋(끄기)event.wait() → 이벤트가 발생할 때까지 기다림🎯 threading.Event()를 사용할 때의 장점✅ 스레드 간 동기화✅ 불필요한 CPU 사용 방지 (while 루프 대신 wait() 사용)✅ 메인 프로세스가 특정 작업이 끝날 때까지 기다릴 수 있음 하나의 파일에서 여러 스레드를 컨.. 2025. 3. 9. 이전 1 2 3 4 5 ··· 33 다음 반응형