묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
2장 환경설정 문의
2장 환경설정 Visual Studio Code에서 64비트라 그런지 화면 버전과 다릅니다. print("Hello world") 입력 후 벌레모양 눌리면 Debug with Python이 안보입니다.
-
미해결퇴근 2시간 당기는 자동화, 코딩 몰라도 됩니다
n8n 설치 에러
설치 시 에러 발생했는데 어떤게 문제일까요..ㅠ
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
Django의 View나 URL의 네이밍 컨벤션
안녕하세요 강사님, 스타트업에서 django를 활용해 개발하고 있는 신입 개발자입니다.일을 시작하다 보니 제가 django에 대해 잘 모르고 있다는 것을 느껴 수강하게 되었는데요, 그 중 가장 고민이 되는 부분이 네이밍이었습니다.그래서 질문드리는 것이 Django에서는 View나 URL 엔드포인트 별명(name=에 들어가는 값)을 지을 때 해당 객체의 타입도 같이 적는지 궁금합니다.예를 들어 View의 이름을 지을 때 PostRenderView라고 짓는지, 아니면 PostRender라고만 해도 될까요? url name을 지을 때에도 post_render라고만 하면 되는지, post_render_view라고 해주는게 좋은지 django의 컨벤션을 알고 싶습니다.제가 생각하기엔 View의 클래스 이름은 view라는 것을 명확하게 하기 위해 View를 붙이는 게, url name은 template에서 쓰이는 별명이므로 post_render라고만 하는 게 좋다고 생각해서 지금까지 이렇게 짓고 있었습니다.또 HTTP response에 대해 들었던 내용 중에 정확하진 않지만 메서드 타입이 get이면 이미 타입에 역할이 포함되어 있기 때문에 메서드 이름에 get을 넣지 않는 게 좋다라고 들었던 기억이 있어서요. 강사님의 생각이 궁금합니다. 알찬 강의 잘 수강하고 있습니다. 감사합니다!
-
미해결베개 투자법: 자면서 돈 버는 AI 주식 자동 매매 머신
[베개투자법 :자면서 돈버는 AI주식 자동매매머신] 종목 변경시 코드 수정 부문을 알려주세요
안녕하세요. 주식 종목을 변경하고 싶은데 변경해야할 코드 부분을 알려주세요.
-
미해결Airflow 마스터 클래스
custom_image 디렉토리 문의드립니다.
안녕하세요.섹션 12 강의를 듣는중인데 airflow 디렉토리 밑에 custom_image 디렉토리가 이미 하나 있어야 하더라구요.그런데 제 airflow 디렉토리 밑에는 해당 디렉토리가 없습니다.여태 진행한 강의는 분명 빠짐없이 들었는데 제가 실수로 놓친 부분이 있는 것 같습니다..다시 찾아 듣고자 하는데 어느 강의인지 찾지를 못하고 있습니다.죄송하지만 혹시 해당 부분 몇 강에서 진행하셨는지 알 수 있을까요?
-
해결됨38군데 합격 비법, 2025 코딩테스트 필수 알고리즘
재귀함수-2: 회문검사
1. 현재 학습 진도23. 2-9 재귀함수 - 2 2. 어려움을 겪는 부분재귀함수-2 의 영상 6분 쯤에 "for i in range(n)" 부분이 이해가 안 가서요!문자열 길이만큼, 끝까지 연산해야하는 로직인가요?3. 시도해보신 내용range(n)이 range(n/2) 이런식으로 절반까지만 연산해야하는게 아닌가 헷갈려서 질문드립니다 ㅠㅠ! 이렇게 구체적으로 알려주시면, 더 정확하고 도움이 되는 답변을 드릴 수 있습니다! 😊
-
미해결Python 엑셀 프로그래밍 - with xlsxwriter
메일보내기 할 때 에러..
한글파일명인 액셀파일을 첨부하는 것은 안되나요?아니면, 액셀 내 columns value 값이 한글인 것을 가져와서 메일 헤더나 파일명으로 사용한게 에러인 것인지..궁금합니다... 메일주소와 password 는 '^^^^^' 임의 처리한 코딩입니다. 오류내용:❌ 이메일 발송 실패: 진리종합상사 - 'ascii' codec can't encode characters in position 5-7: ordinal not in range(128) import pandas as pd import os from openpyxl.utils import get_column_letter from openpyxl.styles import Font, PatternFill, Alignment, Border, Side import smtplib from email.message import EmailMessage import ssl from email.header import Header from email.utils import formataddr # ------------------------- # 설정 # ------------------------- cost_manage_path = 'cost_manage.xlsx' partner_path = 'partner.xlsx' output_dir = 'output' SENDER_EMAIL = '^^^^^^^^^^^^^^' SENDER_PASSWORD = '^^^^^^^^^^^^^^' SMTP_SERVER = 'smtp.gmail.com' SMTP_PORT = 587 # ------------------------- # 엑셀 읽기 # ------------------------- try: cost_data_df = pd.read_excel(cost_manage_path, sheet_name='Sheet1', header=1) partner_sheet1_df = pd.read_excel(partner_path, sheet_name='Sheet1') partner_sheet2_df = pd.read_excel(partner_path, sheet_name='Sheet2') except FileNotFoundError as e: print(f"오류: 파일을 찾을 수 없습니다. {e.filename}") exit() # ------------------------- # 데이터 전처리 # ------------------------- for df in [cost_data_df, partner_sheet1_df, partner_sheet2_df]: df.columns = df.columns.str.strip() cost_data_df = cost_data_df.drop(columns=['협력사ID', '협력사명']) cost_data_df['상세분류ID'] = cost_data_df['상세분류ID'].astype(str).str.strip() partner_sheet1_df['상세분류ID'] = partner_sheet1_df['상세분류ID'].astype(str).str.strip() partner_sheet2_df['협력사KEY'] = partner_sheet2_df['협력사KEY'].astype(str).str.strip() merged_df = pd.merge(cost_data_df, partner_sheet1_df, on='상세분류ID', how='left') final_df = pd.merge(merged_df, partner_sheet2_df, on='협력사KEY', how='left') final_df = final_df.drop(columns=['상세분류명_y']) final_df = final_df.rename(columns={'상세분류명_x': '상세분류명'}) final_columns = ['상세분류ID', '상세분류명', '협력사KEY', '협력사ID', '협력사명', '상품ID', '규격', '단가', 'moq', '이메일주소'] real_final_df = final_df[final_columns] grouped_by_partner = real_final_df.groupby('협력사KEY') if not os.path.exists(output_dir): os.makedirs(output_dir) # ------------------------- # 엑셀 생성 & 이메일 발송 # ------------------------- for partner_key, group_df in grouped_by_partner: # 엑셀 데이터 준비 columns_for_excel = ['상세분류ID', '상세분류명', '협력사ID', '협력사명', '상품ID', '규격', '단가', 'moq'] data_to_write = group_df[columns_for_excel].copy() header_row1 = pd.DataFrame([['', '', '', '', '', '', '▼작성', '▼작성']], columns=columns_for_excel) header_row2 = pd.DataFrame([columns_for_excel], columns=columns_for_excel) final_excel_df = pd.concat([header_row1, header_row2, data_to_write], ignore_index=True) # 파일 경로 file_name = f"{partner_key}_견적_요청서.xlsx" output_path = os.path.join(output_dir, file_name) # 엑셀 생성 with pd.ExcelWriter(output_path, engine='openpyxl') as writer: final_excel_df.to_excel(writer, index=False, header=False, sheet_name='Sheet1') worksheet = writer.sheets['Sheet1'] worksheet.sheet_view.showGridLines = False # 스타일 설정 bold_yellow_fill = PatternFill(start_color='FFFF00', end_color='FFFF00', fill_type='solid') center_align = Alignment(horizontal='center') left_align = Alignment(horizontal='left') bold_font = Font(bold=True) thin_border = Border(left=Side(style='thin'), right=Side(style='thin'), top=Side(style='thin'), bottom=Side(style='thin')) # 1행 스타일 for cell in worksheet[1]: if cell.value == '▼작성': cell.fill = bold_yellow_fill cell.font = bold_font # 2행 스타일 for cell in worksheet[2]: cell.alignment = center_align cell.border = thin_border # 데이터 행 스타일 left_align_cols = ['상세분류ID', '상세분류명', '규격'] col_map = {col: i + 1 for i, col in enumerate(columns_for_excel)} for row_num in range(3, worksheet.max_row + 1): for col_name in columns_for_excel: cell = worksheet.cell(row=row_num, column=col_map[col_name]) cell.alignment = left_align if col_name in left_align_cols else center_align cell.border = thin_border # 열 너비 자동 조정 for column in worksheet.columns: max_length = 0 column_letter = get_column_letter(column[0].column) for cell in column: if cell.value: max_length = max(max_length, len(str(cell.value))) worksheet.column_dimensions[column_letter].width = max_length + (20 if column_letter == get_column_letter(col_map['규격']) else 5) print(f"✅ '{file_name}' 파일이 '{output_dir}' 폴더에 생성되었습니다.") # 이메일 정보 partner_email = group_df['이메일주소'].iloc[0] partner_name = group_df['협력사명'].iloc[0] if pd.isna(partner_email): print(f"❌ {partner_name}의 이메일 주소가 없어 이메일 발송을 건너뜁니다.") continue print(f"📧 '{partner_name}' ({partner_email})님에게 이메일 발송 중...") msg = EmailMessage() msg['From'] = formataddr((str(Header('보내는 사람 이름', 'utf-8')), SENDER_EMAIL)) msg['To'] = partner_email # 이 부분만 이전 코드로 되돌려 일반 문자열을 할당합니다. msg['Subject'] = f'[{partner_name}] 월간 비용 견적 요청서입니다.' body = f"""안녕하세요, {partner_name} 담당자님. 월간 비용 견적 요청서(첨부파일)를 보내드립니다. 확인 후 회신 부탁드립니다. 감사합니다. -- 보내는 사람 이름 """ msg.set_content(body) try: with open(output_path, 'rb') as f: # `filename` 인수를 일반 문자열로 전달 msg.add_attachment(f.read(), maintype='application', subtype='octet-stream', filename=file_name) except Exception as e: print(f"❌ 파일 첨부 중 오류 발생: {e}") continue try: context = ssl.create_default_context() with smtplib.SMTP(SMTP_SERVER, SMTP_PORT) as server: server.starttls(context=context) server.login(SENDER_EMAIL, SENDER_PASSWORD) server.send_message(msg) print(f"✅ 이메일 발송 성공: {partner_name}") except Exception as e: print(f"❌ 이메일 발송 실패: {partner_name} - {e}")
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
vscode 터미널 출력이 안되요
위에서 입력하면 터미널 창에 나와야 되는데 안나와요ㅠ
-
미해결[AI] 프롬프트만으로 아이디어 구현하기_바이브코딩 입문
venv 설정 관련
강의에서는 폴더를 선택하고 main.py를 만든 다음 venv를 세팅하는데, 폴더를 만든 다음 venv를 설정한 후 main.py를 만드는 것과의 차이가 있나요?
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
vscode 명령 팔레트 오류
vscode 명령 팔레트에서 파이썬(다운로드한 파이썬 최신버전 64-bit 클릭한 후 test.py 파일생성하는데 오류뜨면서 실행할 수 없다고 나옵니다
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
krag를 이용한 검색기법 평가관련 질문
안녕하세요. krag를 통해 검색기법들을 평가하는 방법에서 질문이 있습니다. 이렇게 검색기법을 통해서 검색기에 대한 성능을 평가하려면, 우선적으로 question과 answer에 대한 평가셋을 직접 만들어야 하는걸까요?
-
미해결copilot과 함께 파이썬 찍어먹기 (크롤링 , 데이터시각화 )
python 실행관련 문의
안녕하세요. python에서 강의하신대로 코드 입력후 터미널에 python 파일이름.py를 실행하면 아무런 반응이 없이 PS D:\Dev\PYTHON> PS D:\Dev\PYTHON> 글만 다시 뜹니다. (에러코드도 없음) 해결방법을 몰라 진행이 안되는데 코파일럿 통해 질의해도 환경이나, 코드는 정상이라고 합니다. 해결방법을 알려주시면 감사하겠습니다...
-
미해결알고리즘 트레이딩의 비밀, AI가 주가를 맞추는 법
DB에 데이터 넣지 않는 이유가 무엇때문인가요?
DB에 데이터를 관리하지 않고 csv 파일로 관리 하는 이유가 뭔지 궁금합니다. 데이터가 방대해서 처리 하기가 힘들어서 그런건가요?
-
미해결Airflow 마스터 클래스
ETL 인터뷰 관련 문의
안녕하세요 선생님,현재 데이터 엔지니어 직무 면접을 준비하고 있는 수강생입니다. 저는 이번 면접에서 ETL 아키텍처 및 데이터 파이프라인 구성과 관련된 주제를 중심으로 준비하고 있습니다.수업을 통해 많은 내용을 배우고 있지만, 솔직히 말씀드리면 양이 너무 방대하다 보니 모든 부분을 다 소화하기가 쉽지 않습니다.시간도 빠듯해 점점 불안감이 커지고 있습니다. 그래서 정말 간절한 마음으로 도움을 부탁드립니다.혹시 면접에서 특히 중요한 핵심 개념이나 자주 나오는 질문, 그리고 실제 사례 중심으로 정리하면 좋은 부분이 무엇인지 방향을 잡아주실 수 있을까요? 혹은 강의만 따로 추천 해주시면 감사하겠습니다.제가 부족한 부분을 더 보완해서 면접에서 꼭 좋은 결과를 내고 싶습니다.늘 열정적으로 가르쳐주시는 것에 감사드리며,간절히 도움을 청합니다.감사합니다.
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?
6번 강의에 패키지, 파이썬, 아나콘다 버전 강의와 일치 안 시키고 진행해도 되나요? 하다가 버전 때문에 안되면 어떡하나요?
-
해결됨파이썬으로 나만의 블로그 자동화 프로그램 만들기
19강 문의
19강 챗gpt api로 디지털노가다 타파하기(1) 강의 에서오픈api 키 값은 어떻게 받는건가요? 선생님은 개인 키를 넣었다고 하셨는데실제로 저는 어떻게 키값을 넣고 활용 할 수 있을까요?
-
해결됨파이썬으로 나만의 블로그 자동화 프로그램 만들기
17강 문의
17.쿠팡 파트너스 추출 예제 수업 듣다가 이해가 안가는데요 쿠팡파트너스에서 뭘 추출하고자 하는건가요??
-
미해결퇴근 2시간 당기는 자동화, 코딩 몰라도 됩니다
n8n 설치
npm install -g n8n입력했는데 설치가 잘 안된 것 같습니다. 이 순서로 파일 다운로드 받았는데 잘못된 게 있을까요?node-v24.8.0-x64.msi 로 설치했습니다.
-
미해결[AI] 프롬프트만으로 아이디어 구현하기_바이브코딩 입문
파이썬 설치 관련 질문입니다.
파이썬을 개인 pc에 설치하고, 커서에서 확장 프로그램으로 또 파이썬을 설치해야 하나요? 아니면 개인 pc에 설치했으면 확장 프로그램은 설치할 필요가 없나요?
-
미해결생성형 AI 기초와 동작 원리 이해
쥬피터노트북 통한 python3 연결실패
안녕하세요, 쥬피터노트북 접속 후 python 연결하려고 클릭하였으나 kernel unknown 으로 연결 실패가 뜹니다.어떻게 연결가능한지 확인요청드려요.