Go Hard
@cheiri741145
수강평 작성수
-
평균평점
-
자동차와 영화를 좋아하는 개발자입니다.
블로그
전체 13
2026. 04. 21.
0
Streamlit과 Plotly로 구현한 스쿨존 과태료 시뮬레이터 및 실시간 히트맵
공공 데이터를 활용해 실무적인 도구를 만드는 과정에서 직면했던 시각화 이슈와 데이터 트래킹 로직을 공유합니다.이번 프로젝트의 핵심은 Plotly Express와 Graph Objects를 활용한 레이어 중첩 처리였습니다. 특히 히트맵 위에 동적 마커를 안정적으로 렌더링하기 위한 데이터 형변환 과정이 핵심입니다.# 🎯 레이어 중첩 및 히트맵 렌더링 핵심 로직 fig = px.density_mapbox( city_counts, lat='lat', lon='lon', z='조회건수', radius=35, center=dict(lat=36.5, lon=127.5), zoom=6.5, mapbox_style="carto-positron", hover_name='city' )전체적인 시스템 아키텍처와 Supabase를 활용한 익명 데이터 로깅 방식, 그리고 개발 과정에서 발견한 Plotly의 치명적인 렌더링 버그와 해결 방법은 아래 영상에서 자세히 확인하실 수 있습니다.[기술 리뷰 및 소스 코드 확인]유튜브: https://youtu.be/3NTzOH-QUOI과태료 조회 : https://schoolzonefinesim.streamlit.app/GitHub: https://github.com/gohard-lab/school_zone_fine_sim
스쿨존과태료
・
파이썬
・
데이터시각화
・
어린이보호구역
・
잡학다식개발자
・
과태료시뮬레이터

2026. 04. 13.
0
🚀 인위적인 번들거림을 제거한 고충실도(High-fidelity) AI 업스케일러 공개
기존 AI 화질 개선 툴들이 보여주는 특유의 부자연스러운 매끄러움(Plastic look)에 아쉬움을 느껴 직접 제작한 GoHard AI Upscaler를 소개합니다. 단순히 해상도를 키우는 것을 넘어, 원본이 가진 고유의 질감을 보존하는 데 집중했습니다.✨ 핵심 가치 (Core Values)High-fidelity AI Upscaling: 공격적인 노이즈 제거 대신, 실제 사진과 같은 자연스러운 입자감과 구조적 디테일을 복원합니다.Clean and Intuitive UI: 복잡한 설정 없이 작업에만 집중할 수 있도록 직관적이고 깔끔한 인터페이스를 갖췄습니다.Safe & Private Environment: 사용자의 데이터는 외부 서버로 전송되지 않습니다. 로컬 환경 또는 안전하게 격리된 Google Colab에서만 처리됩니다.💻 핵심 로직 (Python 기반)IT 커뮤니티(OKKY, 벨로그 등)의 성격에 맞춰 기술적 원리를 엿볼 수 있는 핵심 코드 일부를 공유합니다.# 고충실도 텍스트 보존 엔진 예시 from gohard_engine import FidelityModel from tracker_web import log_app_usage def process_high_res(image_path): # 인위적인 스무딩을 억제하고 디테일을 재구성 upscaler = FidelityModel(mode="texture_priority") log_app_usage("upscaler_v1", "high_res_task") return upscaler.run(image_path)🚨 치명적인 단점과 기술적 한계이 프로그램은 완벽하지 않습니다. 고충실도(High-fidelity) 구현을 위해 구조적으로 감수해야 했던 치명적인 단점 한 가지가 존재합니다. 이 기술적 병목 현상이 발생하는 구체적인 이유와 제작 과정에서의 비하인드는 아래 영상에 솔직하게 담았습니다.(배포된 실행 파일은 철저한 검증을 거쳤으므로 안심하고 사용하셔도 됩니다.)치명적인 이유 확인 (유튜브): https://youtu.be/vXHdwpibqEo개발자 양심 가이드: 이 프로그램이 도움이 되었다면, ‘체리피커’가 되기보다 개발자의 양심을 담아 GitHub Star 하나만 부탁드립니다! ⭐
AI 코딩
・
AI
・
PYTHON
・
opensource
・
파이썬
・
GoogleColab
・
Photography
![[Open Source] 파이썬으로 직접 만드는 100% 무료 AI 화질 개선 툴 (4K](https://cdn.inflearn.com/public/files/blogs/51c5b702-f4ec-4c15-9c2d-31a0b48ee9f7/thumbNeil_ko.png?w=260)
2026. 04. 05.
0
[Open Source] 파이썬으로 직접 만드는 100% 무료 AI 화질 개선 툴 (4K
안녕하세요. 평소 자동차와 IT 기술을 사랑하며 '잡학다식 개발자' 채널을 운영 중인 개발자입니다.최근 유료 AI 이미지 업스케일러 서비스들이 많아졌지만, 소중한 개인 사진을 외부 서버에 업로드하는 것이 보안상 꺼려질 때가 많았습니다. 그래서 Real-ESRGAN 모델을 활용해 내 로컬 PC에서 100% 오프라인으로 작동하는 화질 개선 프로그램을 직접 구현해 보았습니다.주요 특징100% Offline: 외부 서버 전송 없이 로컬에서 안전하게 처리Real-ESRGAN 기반: 딥러닝 모델을 통한 정밀한 디테일 복원Batch Processing: 수십 장의 저화질 사진을 한 번에 4K로 변환핵심 코드 스니펫 (Python)전체 로직의 핵심인 모델 로드와 추론 부분입니다. upscale_image 함수 하나로 저화질 이미지의 노이즈를 제거하고 해상도를 복원합니다.Pythonimport cv2 from basicsr.archs.rrdbnet_arch import RRDBNet from realesrgan import RealESRGANer def upscale_image(image_path, model_path, tile=0): # Real-ESRGAN 모델 구조 설정 model = RRDBNet(num_in_ch=3, num_out_ch=3, num_feat=64, num_block=23, num_grow_ch=32, scale=4) upsampler = RealESRGANer(scale=4, model_path=model_path, model=model, tile=tile) img = cv2.imread(image_path, cv2.IMREAD_UNCHANGED) output, _ = upsampler.enhance(img, outscale=4) return output # 라이브러리 설치 시 uv를 사용하면 더욱 빠르고 안정적입니다. # uv pip install realesrgan basicsr 구체적인 작동 원리나 저해상도 자동차 사진이 4K로 변환되는 실제 테스트 과정은 유튜브 콘텐츠를 참고해 주시면 감사하겠습니다. 특히 영상 후반부에는 오픈소스 모델이 상용 서비스보다 아쉬운 치명적인 단점에 대해서도 솔직하게 담았습니다. 👉[유튜브 콘텐츠 확인하기](※ 실행 파일은 제가 직접 빌드한 것이니 안심하고 받으셔도 됩니다.)
AI 실무 활용
![[Python] Matplotlib을 활용한 F1 레이스카 궤적 이탈 시뮬레이션 구현](https://cdn.inflearn.com/public/files/blogs/8e40c59b-80e8-4c4f-9de0-6e2a45249857/thumbNeil_kor_2.png?w=260)
2026. 03. 30.
0
[Python] Matplotlib을 활용한 F1 레이스카 궤적 이탈 시뮬레이션 구현
안녕하세요.오늘은 파이썬의 NumPy와 Matplotlib 애니메이션 기능을 활용해, F1 차량의 코너링 중 접지력 상실(Hydroplaning) 시점을 계산하고 궤적을 시각화하는 시뮬레이션을 구현해 보았습니다.개발을 하다 보면 종종 '모든 물리 변수를 정밀하게 넣어야 완벽한 코드'라는 이론적 강박에 빠지곤 합니다. 하지만 목적이 '데이터 추출'이 아닌 '현상의 시각화'라면, 모델의 복잡도를 낮추는 것이 렌더링 최적화와 직관성 측면에서 현실적인 정답이 될 수 있습니다.아래는 차량의 현재 위치와 속도, 중력가속도를 계산하여 그립(Grip) 상실 여부에 따라 궤적 벡터를 분기하는 핵심 코드 블록입니다.def calculate_state(t, v0, r, drag_coef): dt_step = t if t = config['t_hydroplaning']: lost_grip_theta = initial_theta + omega * config['t_hydroplaning'] lost_grip_pos = np.array([r * np.cos(lost_grip_theta) + r, r * np.sin(lost_grip_theta) + r]) lost_grip_v_vec = np.array([-v0 * np.sin(lost_grip_theta), v0 * np.cos(lost_grip_theta)]) slide_time = t - config['t_hydroplaning'] slide_accel = drag_coef * v0 slide_v_mag = max(0, v0 - slide_accel * slide_time) slide_v_avg = (v0 + slide_v_mag) / 2 slide_dist = slide_v_avg * slide_time v0_unit_vec = lost_grip_v_vec / v0 if v0 > 0 else np.array([0, 0]) car_x = lost_grip_pos[0] + v0_unit_vec[0] * slide_dist car_y = lost_grip_pos[1] + v0_unit_vec[1] * slide_dist return car_x, car_y 이 코드가 실제 화면에서 어떻게 애니메이션으로 구동되는지, 그리고 현업 데이터 분석 환경에서는 이론적인 수식과 어떤 간극이 존재하는지에 대한 구체적인 작동 원리와 자세한 설명은 아래 유튜브 콘텐츠를 참고해 주시면 감사하겠습니다. https://youtu.be/tZ1Vvy1g0Yg
AI 코딩
・
Python
・
파이썬
・
데이터시각화
・
Matplotlib
・
NumPy
・
시뮬레이션
・
F1
・
모터스포츠

2026. 03. 23.
0
Streamlit과 Plotly를 활용한 차계부 개발
안녕하세요. 파이썬과 Streamlit을 활용하여 차량 주행 기록과 유지비를 시각화하는 '드라이빙 대시보드' 토이 프로젝트를 진행했습니다.이번 프로젝트를 구현하면서 가장 까다로웠던 부분 중 하나는, Plotly 라이브러리의 기본 인터랙티브 기능(드래그, 줌)이 모바일이나 웹 대시보드 환경에서 오히려 사용성을 크게 해친다는 점이었습니다. 마우스 휠이나 스크롤 시 그래프가 의도치 않게 날아가 버리는 현상을 제어하기 위해, 아래와 같이 Plotly의 레이아웃 속성을 고정하는 방식을 적용했습니다. Python# Plotly 그래프 줌/드래그 원천 차단 및 레이아웃 고정 핵심 코드fig_eff.update_layout(title="연비 트렌드 및 차량 이슈 (화면 고정)",hovermode='closest',dragmode=False, # 드래그 차단xaxis=dict(tickformat="%Y년 %m월 %d일", fixedrange=True), # X축 줌 차단yaxis=dict(fixedrange=True) # Y축 줌 차단)# config 설정을 통해 상단 메뉴바 숨김 처리st.plotly_chart(fig_eff, use_container_width=True, config={'displayModeBar': False}) 단순한 데이터 입출력뿐만 아니라, Streamlit의 session_state를 활용한 상태 관리와 Supabase 연동 로직도 함께 포함되어 있습니다. 구체적인 컴포넌트 간의 작동 원리나 전체 아키텍처, 그리고 상세한 소스 코드는 아래 영상과 깃허브에 정리해 두었습니다.데이터 시각화 대시보드 구축에 관심 있으신 분들께 도움이 되기를 바랍니다.🔗 GitHub 소스 코드: https://github.com/gohard-lab/driving_dashboard▶ 구체적인 작동 원리 및 개발 과정 : https://youtu.be/uVhkTbIp7rg
차계부
・
차량관리
・
자동차유지비
・
연비
・
전비
・
데이터분석
・
파이썬
・
코딩
・
스트림릿
・
Python

2026. 03. 16.
0
테슬라 FSD v12가 30만 줄의 C++ 제어 로직을 버린 이유
안녕하세요, '잡학다식 개발자'입니다. 최근 자율주행 업계뿐만 아니라 AI 생태계 전체에 큰 화두를 던진 테슬라 FSD v12의 '엔드투엔드(End-to-End) AI' 아키텍처 전환에 대해 현업 개발자의 시선으로 분석해 보았습니다.기존 시스템은 철저한 휴리스틱, 즉 아래와 같은 룰(Rule) 기반의 C++ 코드가 수십만 줄 얽혀있는 구조였습니다.Python# 기존 휴리스틱 기반 제어 (개념적 표현) def autonomous_drive(sensor_data): if sensor_data.distance_to_lead_car 50.0: return apply_brake(force=0.8) elif check_traffic_light() == 'RED': return stop_vehicle() # 수많은 Edge Case 처리를 위한 if-else의 반복... 하지만 v12부터는 제어 로직을 폐기하고, Video Stream이 거대한 신경망 네트워크를 통과해 곧바로 Control 신호를 내뱉는 구조로 변경되었습니다. 추론 단의 C++ 코드가 사라진 대신, 서버 단의 PyTorch/Python 생태계에서 수백만 건의 데이터를 학습시키는 인프라 전쟁으로 패러다임이 완전히 넘어간 것이죠.Python# End-to-End AI 기반 제어 (개념적 표현) def autonomous_drive(video_stream): # 중간 판단 로직 없이 모델이 직접 조향 및 가속도 추론 steering_angle, acceleration = e2e_neural_network_model(video_stream) return steering_angle, acceleration 단순히 AI 모델이 좋아진 것을 넘어, '디버깅이 불가능한 블랙박스 모델'을 현실의 도로 위에 올리기 위해 어떤 데이터 적인 타협과 자본의 투입이 있었는지 다루어 보았습니다. 구체적인 작동 원리와 교과서적 이론이 실제 현업에서 어떻게 다르게 작용하는지 궁금하시다면, 아래 유튜브 콘텐츠를 참고해 주시면 감사하겠습니다.https://youtu.be/aRPA-ZAaa3s
AI 실무 활용
・
테슬라
・
FSD
・
엔드투엔드
・
자율주행
・
딥러닝
・
파이썬
・
개발자
・
아키텍처
・
IT트렌드
![[Python] 자율주행 팬텀 브레이크 현상의 알고리즘적 이해와 시뮬레이션](https://cdn.inflearn.com/public/files/blogs/4f97f231-6735-4a8a-9d49-e70976d61d96/thumbNeil.jpg?w=260)
2026. 03. 11.
0
[Python] 자율주행 팬텀 브레이크 현상의 알고리즘적 이해와 시뮬레이션
안녕하세요. IT 개발자 관점에서 자동차의 최신 기술을 분석하는 채널을 운영 중입니다.자율주행 시스템에서 빈번하게 발생하는 '팬텀 브레이크(Phantom Braking)' 현상을 센서 퓨전(Sensor Fusion) 데이터의 충돌과 페일 세이프(Fail-Safe) 로직 관점에서 분석해 보았습니다.기존 레거시 자동차 브랜드들은 레이더의 오탐지(False Positive)와 카메라의 정상 데이터가 충돌할 때, 보수적인 제동을 선택하도록 하드코딩된 경우가 많습니다. 이를 파이썬으로 간단히 모델링하면 아래와 같은 논리 구조를 갖습니다.Python# phantom_brake_simulator.py def simulate_sensor_fusion(camera_clear, radar_obstacle_detected): """ 카메라와 레이더 센서 데이터 충돌 시 기존 자동차 브랜드의 Fail-Safe 로직 시뮬레이션 """ print(f"[센서 입력] 카메라: 전방 클리어 ({camera_clear}), 레이더: 장애물 감지 ({radar_obstacle_detected})") # Fail-Safe 로직: 하나의 센서라도 장애물을 감지하면 보수적으로 제동 개입 if radar_obstacle_detected or not camera_clear: print("[시스템 판단] 데이터 충돌. Fail-Safe 발동 -> 긴급 제동(Phantom Brake) 개입") return True return False # 난반사로 인한 레이더의 오탐지 상황 가정 simulate_sensor_fusion(camera_clear=True, radar_obstacle_detected=True) 이러한 구조적 딜레마를 해결하기 위해 테슬라가 레이더를 제거하고 비전 AI 트레이닝(Dojo)으로 전환한 배경 등, 개발자 시각에서의 더 깊이 있는 분석은 아래 유튜브 영상에 담아두었습니다. 상세 분석 영상: https://youtu.be/rH0FZhxZQ_Y전체 소스 코드: https://github.com/gohard-lab/phantom_brake_simulator온라인 실행(Colab): https://colab.research.google.com/github/gohard-lab/phantom_brake_simulator
웹 개발
・
Python
・
파이썬
・
인공지능
・
AI
・
테슬라비전
・
센서퓨전
・
알고리즘
・
데이터시뮬레이션
・
자율주행코딩
![[Python] 단 50줄로 구현하는 테슬라 비전과 팬텀 브레이킹의 한계](https://cdn.inflearn.com/public/files/blogs/1e9ab1ce-63db-4286-aaeb-59273170e317/backGround.png?w=260)
2026. 03. 09.
0
[Python] 단 50줄로 구현하는 테슬라 비전과 팬텀 브레이킹의 한계
안녕하세요. 일상의 호기심을 파이썬으로 풀어보는 개발자입니다. 2021년 테슬라가 라이다와 레이더를 버리고 카메라 기반의 'Occupancy Networks'로 전환한 후 발생한 엣지 케이스(팬텀 브레이킹)를, 기초적인 컴퓨터 비전 코드로 시뮬레이션하며 그 한계를 짚어보았습니다.단순한 Haar Cascade 모델을 사용하여 블랙박스 영상 속 차량을 인식하는 기초적인 스크립트입니다. Python# tesla_vision_simulator.py import cv2 def run_vision_simulator(video_path: str, cascade_path: str) -> None: """블랙박스 영상을 통해 기초적인 차량 인식 비전 시뮬레이터를 구동합니다.""" cap = cv2.VideoCapture(video_path) car_cascade = cv2.CascadeClassifier(cascade_path) while cap.isOpened(): ret, frame = cap.read() if not ret: break # CPU 연산 병목 해결을 위한 해상도 축소 resized_frame = cv2.resize(frame, (640, 360)) gray_frame = cv2.cvtColor(resized_frame, cv2.COLOR_BGR2GRAY) # 객체 탐지 및 바운딩 박스 처리 cars = car_cascade.detectMultiScale(gray_frame, scaleFactor=1.1, minNeighbors=3) for (x, y, w, h) in cars: cv2.rectangle(resized_frame, (x, y), (x + w, y + h), (255, 0, 0), 2) cv2.imshow('Tesla Vision Simulator (Basic)', resized_frame) if cv2.waitKey(30) & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows() if __name__ == "__main__": run_vision_simulator('dashcam_footage.mp4', 'haarcascade_car.xml') 비록 구형 알고리즘이지만, 이 코드를 돌려보면 명암 변화나 짙은 그림자를 장애물로 오인하는 오탐지(False Positive) 현상을 명확히 관찰할 수 있습니다. 레이더라는 크로스체크 수단이 사라진 순수 비전(Vision Only) 모델이 현실의 가혹한 도로 환경에서 어떻게 무너지는지 확인할 수 있는 대목입니다. 요즘 파이썬 생태계 표준에 맞추어, 구형 requirements.txt 대신 pyproject.toml을 적용하여 프로젝트 의존성을 구성해 두었습니다. 자세한 시뮬레이터 구동 과정과 Tesla Vision 기술에 대한 해설은 아래 유튜브 콘텐츠에 담아두었습니다. 여러분의 블랙박스 영상으로도 직접 테스트해 보시길 권장합니다. [▶ 시뮬레이터 구동 및 기술 해설 영상]: https://youtu.be/xWrnxjh1GnY
AI 코딩
・
Python
・
OpenCV
・
자율주행
・
컴퓨터비전
・
데이터분석
・
pyproject
![[토이 프로젝트] K카 중고차 동적 크롤링 및 Streamlit 대시보드 배포](https://cdn.inflearn.com/public/files/blogs/6366a9c6-6233-445b-8b99-0cf4113068cf/thumbNeil.png?w=260)
2026. 03. 07.
0
[토이 프로젝트] K카 중고차 동적 크롤링 및 Streamlit 대시보드 배포
🚀 서비스 실행 링크: https://youtu.be/HnL0wOqci7Q 안녕하세요.파이썬과 데이터 분석에 관심이 많은 '잡학다식 개발자'입니다. K카 중고차 데이터를 수집하여 감가율을 시각화하는 대시보드 프로젝트를 진행하며 겪은,교과서적 이론과 실제 배포 환경의 간극에 대해 공유하고자 합니다. 보통 입문 강의에서는 requests와 BeautifulSoup을 이용한 정적 스크래핑을 배우지만,실제 상용 웹사이트는 동적 렌더링과 보안으로 겹겹이 막혀 있습니다. 이를 해결하기 위해 Playwright를 도입했습니다. 또한 구형 requirements.txt 대신요즘 파이썬 생태계 표준인 pyproject.toml을 도입하여 패키지 의존성을 명확하게 관리했습니다. 특히 Streamlit Cloud 배포 시 리눅스 컨테이너의 샌드박스 제약으로 브라우저가 뻗어버리는 현상을아래와 같이 Headless 옵션으로 우회했습니다. Python# kcar_headless_scraper.py import os from playwright.sync_api import sync_playwright def fetch_car_prices(): # Streamlit Cloud 환경에서 Playwright용 브라우저 강제 설치 os.system("playwright install chromium") with sync_playwright() as playwright_instance: # 이론적인 일반 스크래핑과 달리, 실제 클라우드 서버 환경에서는 # 샌드박스 충돌 및 메모리 부족 현상으로 인한 에러가 발생합니다. # 이를 우회하기 위한 현업의 필수 headless 옵션 세팅입니다. browser_instance = playwright_instance.chromium.launch( headless=True, args=[ '--no-sandbox', '--disable-dev-shm-usage' ] ) # 보안이 적용된 동적 페이지 렌더링 대기 및 데이터 추출 page_instance = browser_instance.new_page() page_instance.goto("https://www.kcar.com") # ... (중략: 데이터 크롤링 로직) ... browser_instance.close() return [] 파이썬 크롤러 배포를 공부하시는 분들께 도움이 되기를 바랍니다.
웹 개발
・
파이썬
・
Python
・
웹크롤링
・
Playwright
・
Streamlit
・
토이프로젝트
・
데이터분석
![[파이썬 토이 프로젝트] 나만의 유튜브 쇼츠(Shorts) 자동화 공장 차리기 🎬](https://cdn.inflearn.com/public/files/blogs/86cfd852-45f9-4790-ac56-dfe43ca32644/thumNeil.png?w=260)
2026. 03. 05.
0
[파이썬 토이 프로젝트] 나만의 유튜브 쇼츠(Shorts) 자동화 공장 차리기 🎬
안녕하세요! 파이썬을 활용해 일상의 반복적인 작업을 시스템으로 만드는 개발자입니다. 파이썬 문법을 익히고 나면 크롤링 말고 또 재미있게 해볼 만한 프로젝트가 없을까 고민되시죠? 오늘은 파이썬으로 영상 편집을 자동화해서, 유튜브 '쇼츠 제작 공장'을 직접 만들어보는 흥미로운 토이 프로젝트를 소개해 드립니다. 영상 편집 자동화, 이론과 현실은 다릅니다!보통 블로그 튜토리얼을 보면 코드 몇 줄로 영상 두 개를 뚝딱 합치면 끝난다고 하죠. 하지만 실제 현실에서는 대본을 읽어주는 목소리(TTS)의 길이에 맞춰서 배경 영상의 길이를 정확하게 잘라내어 맞춰주는 세밀한 계산이 필요합니다. 그렇지 않으면 소리만 나오거나 화면만 멈춰있는 엉성한 결과물이 나오게 됩니다.이러한 현실적인 동기화 문제를 해결한 파이썬 코드를 준비했습니다. 한번 따라 해보세요! 파일명: make_shorts.pyPythonfrom moviepy.editor import VideoFileClip, AudioFileClip # 배경 영상과 음성 파일 가져오기 video = VideoFileClip("background.mp4") audio = AudioFileClip("voice.mp3") # 목소리 길이에 딱 맞게 배경 영상 자르기 (매우 중요!) if video.duration > audio.duration: video = video.subclip(0, audio.duration) # 소리와 영상 합치기 final_clip = video.set_audio(audio) # 새로운 영상 파일로 저장하기 final_clip.write_videofile("my_first_shorts.mp4", codec="libx264") 배포와 관리는 세련되게!프로젝트를 깃허브에 올리거나 세팅하실 때, 예전 방식인 requirements.txt 대신 최신 표준인 pyproject.toml을 사용해 보세요. 프로젝트 구조가 훨씬 깔끔해지고 라이브러리 설치 오류도 획기적으로 줄어듭니다.전체적인 코드 작성 흐름과 파이썬이 실제로 쇼츠 영상을 만들어내는 신기한 구동 화면은 아래 제 튜토리얼 영상에 아주 차분하고 자세하게 담아두었습니다. 파이썬의 무궁무진한 활용법을 확인해 보세요! 👉https://www.youtube.com/watch?v=3m4AEVO1swg
개발 · 프로그래밍 기타
・
파이썬
・
자동화
・
파이썬입문
・
토이프로젝트
・
영상편집




