<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>밍토리님의 블로그</title>
    <link>https://m1ngm1ng.tistory.com/</link>
    <description>m1ngm1ng 님의 블로그 입니다.</description>
    <language>ko</language>
    <pubDate>Mon, 13 Jul 2026 13:24:05 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>m1ngm1ng</managingEditor>
    <image>
      <title>밍토리님의 블로그</title>
      <url>https://tistory1.daumcdn.net/tistory/8094055/attach/5fab6c8996e841769414d3b6e20e0df2</url>
      <link>https://m1ngm1ng.tistory.com</link>
    </image>
    <item>
      <title>[SK쉴더스 루키즈 26기 수료 후기] 생성형 AI기반 사이버보안 실무부터 최종 합격까지</title>
      <link>https://m1ngm1ng.tistory.com/45</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;&lt;b&gt;[설레던 첫 시작, SK쉴더스 루키즈 26기 합격!  ]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요! 오늘은 제 인생의 가장 큰 터닝포인트가 되었던 &lt;b&gt;SK쉴더스 루키즈 26기&lt;/b&gt; 활동을 되돌아보며, 생생한 후기와 합격 노하우를 아낌없이 전해드리려고 합니다.  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대학교 졸업을 앞두고 진로에 대한 고민이 깊던 시기, '국내 정보보안 업계 1위'라는 타이틀과 함께 &lt;b&gt;'생성형 AI를 활용한 사이버보안 전문가 양성과정'&lt;/b&gt; 교육생 모집 포스터를 보게 되었습니다. 최신 트렌드인 AI와 사이버 보안을 융합해 배울 수 있는 흔치 않은 기회라는 확신이 들어 망설임 없이 지원서를 제출했어요!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1-1.jpg&quot; data-origin-width=&quot;4997&quot; data-origin-height=&quot;7052&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cFKwKQ/dJMcacceavQ/oXEe4x0kKSJAK8DzM02NBk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cFKwKQ/dJMcacceavQ/oXEe4x0kKSJAK8DzM02NBk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cFKwKQ/dJMcacceavQ/oXEe4x0kKSJAK8DzM02NBk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcFKwKQ%2FdJMcacceavQ%2FoXEe4x0kKSJAK8DzM02NBk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4997&quot; height=&quot;7052&quot; data-filename=&quot;1-1.jpg&quot; data-origin-width=&quot;4997&quot; data-origin-height=&quot;7052&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비전공자나 다름없던 막막한 상태였지만 보안을 향한 열정과 끈기를 당차게 어필한 결과, 이렇게 감사하게도 교육 입과 '최종합격' 메일을 받게 되었습니다!   25년 6월 4일 첫 오프라인 OT를 가던 날의 찌릿했던 설렘이 아직도 생생하네요 ㅎㅎ&lt;/p&gt;
&lt;figure contenteditable=&quot;false&quot; data-ke-type=&quot;emoticon&quot; data-ke-align=&quot;alignCenter&quot; data-emoticon-type=&quot;niniz&quot; data-emoticon-name=&quot;014&quot; data-emoticon-isanimation=&quot;false&quot; data-emoticon-src=&quot;https://t1.daumcdn.net/axz_keditor/emoticon/niniz/large/014.gif&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/axz_keditor/emoticon/niniz/large/014.gif&quot; width=&quot;150&quot; /&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;1-2.png&quot; data-origin-width=&quot;1231&quot; data-origin-height=&quot;904&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/B3zz4/dJMcag6Lg6s/NddznJbm4QNCo55jGCwRnK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/B3zz4/dJMcag6Lg6s/NddznJbm4QNCo55jGCwRnK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/B3zz4/dJMcag6Lg6s/NddznJbm4QNCo55jGCwRnK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FB3zz4%2FdJMcag6Lg6s%2FNddznJbm4QNCo55jGCwRnK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1231&quot; height=&quot;904&quot; data-filename=&quot;1-2.png&quot; data-origin-width=&quot;1231&quot; data-origin-height=&quot;904&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;[실무 스토리] 내가 수많은 교육 중 루키즈를 선택한 이유와 성장   &lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2026-05-31 141157.blur.png&quot; data-origin-width=&quot;523&quot; data-origin-height=&quot;397&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZRIdw/dJMcabRSSur/DnDkpYL64XX8IfHBo3UjH0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZRIdw/dJMcabRSSur/DnDkpYL64XX8IfHBo3UjH0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZRIdw/dJMcabRSSur/DnDkpYL64XX8IfHBo3UjH0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZRIdw%2FdJMcabRSSur%2FDnDkpYL64XX8IfHBo3UjH0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;523&quot; height=&quot;397&quot; data-filename=&quot;스크린샷 2026-05-31 141157.blur.png&quot; data-origin-width=&quot;523&quot; data-origin-height=&quot;397&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수료 후 감사하게도 공식 교육 후기 인터뷰를 작성하게 되었는데, 이때 제가 적었던 성장의 기록을 살짝 공유해 드릴게요!  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수많은 교육 프로그램 중 제가 루키즈 아카데미를 선택한 이유는 명확했습니다. 데이터를 단순히 '보는 것'과 '다루는 것'의 차이를 제대로 배우고 싶었거든요. 남들이 이론을 배울 때 저는 현업에서 가장 강력한 도구인 &lt;b data-index-in-node=&quot;121&quot; data-path-to-node=&quot;14&quot;&gt;Splunk라는 실무 무기&lt;/b&gt;를 확실하게 장착해 현장에 즉시 기여할 수 있는 인재가 되고 싶었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;15&quot; data-ke-size=&quot;size16&quot;&gt;실제로 6개월 동안 루키즈 교육을 받으면서 제 시각이 정말 많이 성장했습니다. 이전에는 단순히 '어떻게 뚫을까'라는 공격 기법에만 흥미를 느꼈다면, 이제는 '방어자는 어떻게 해야 가장 효율적으로 탐지하고 오탐을 줄일 수 있을까'하는 운영과 대응의 관점으로 시야가 완전히 확장되었습니다. 관제 요원의 입장에서 대시보드의 가독성, 알람의 정확도, 대응 프로세스의 효율성을 깊게 고민해 본 경험은 제게 가장 값진 자산이 되었습니다.  &lt;/p&gt;
&lt;p data-path-to-node=&quot;15&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;16&quot; data-ke-size=&quot;size16&quot;&gt;저에게 루키즈는 한 마디로 '울창한 숲'이었습니다. 처음 이곳에 왔을 때는 정작 수확할 열매가 없는 앙상한 나무 같았지만, 현업 멘토님들의 가르침과 팀원들과의 치열한 협업이 햇살과 비가 되어준 덕분에 이제는 '보안관제 전문가'라는 탐스러운 열매를 맺게 되었습니다.  &lt;/p&gt;
&lt;p data-path-to-node=&quot;16&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;16&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-path-to-node=&quot;16&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;16&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;16&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;16&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;[팀 프로젝트] 게더타운에서 흘린 피땀 눈물   &lt;/b&gt;&lt;/p&gt;
&lt;p data-path-to-node=&quot;16&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nM3GF/dJMcadB6Otb/0gYWJK7k8pmOjGX7gqiChk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nM3GF/dJMcadB6Otb/0gYWJK7k8pmOjGX7gqiChk/img.png&quot; data-origin-width=&quot;926&quot; data-origin-height=&quot;733&quot; data-is-animation=&quot;false&quot; data-filename=&quot;blob&quot; width=&quot;343&quot; height=&quot;272&quot; style=&quot;width: 41.1291%; margin-right: 10px;&quot; data-widthpercent=&quot;41.61&quot; id=&quot;kEditorPhotosEditingImage-3&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nM3GF/dJMcadB6Otb/0gYWJK7k8pmOjGX7gqiChk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnM3GF%2FdJMcadB6Otb%2F0gYWJK7k8pmOjGX7gqiChk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;926&quot; height=&quot;733&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ccdCes/dJMcaak9OGq/cYd2cfDmGWqTgp9IJmFGHk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ccdCes/dJMcaak9OGq/cYd2cfDmGWqTgp9IJmFGHk/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;826&quot; data-origin-height=&quot;466&quot; data-filename=&quot;2.blur.png&quot; width=&quot;380&quot; height=&quot;214&quot; data-widthpercent=&quot;58.39&quot; style=&quot;width: 57.7081%;&quot; id=&quot;kEditorPhotosEditingImage-4&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ccdCes/dJMcaak9OGq/cYd2cfDmGWqTgp9IJmFGHk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FccdCes%2FdJMcaak9OGq%2FcYd2cfDmGWqTgp9IJmFGHk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;826&quot; height=&quot;466&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인터뷰에서 언급했던 '치열한 협업'이 가장 빛을 발했던 순간은 역시 팀 프로젝트였습니다. 저희는 비대면 메타버스 공간인 게더타운에 모여 하루종일 머리를 맞댔는데요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 사진은 프로젝트 기간 내내 코드를 짜고 에러와 사투를 벌였던 저희 팀이, &lt;b&gt;모든 과정을 무사히 마치고 마지막에 다 같이 모여 찍은 소중한 기념 인증샷&lt;/b&gt;이에요 ㅎㅎ! 우리 팀원들의 아바타가 옹기종기 귀엽게 모여있네요  &lt;/p&gt;
&lt;figure contenteditable=&quot;false&quot; data-ke-type=&quot;emoticon&quot; data-ke-align=&quot;alignCenter&quot; data-emoticon-type=&quot;friends1&quot; data-emoticon-name=&quot;017&quot; data-emoticon-isanimation=&quot;false&quot; data-emoticon-src=&quot;https://t1.daumcdn.net/axz_keditor/emoticon/friends1/large/017.gif&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/axz_keditor/emoticon/friends1/large/017.gif&quot; width=&quot;150&quot; /&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로젝트를 진행할 때는 정말 화면이 터질 듯한 긴장감과 열정뿐이었는데, 다 끝내고 이렇게 모여서 찰칵 사진을 남길 때는 얼마나 홀가분하고 뿌듯했는지 모릅니다. 이때 쌓인 끈끈한 &lt;b&gt;집단지성과 팀워크&lt;/b&gt;는 지금 되돌아봐도 제 커리어의 가장 든든한 밑거름이 되어주고 있습니다. 다시 봐도 정말 자랑스러운 우리 조원들과의 추억이네요!  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;[쉴더스 라이프] 현장실습  ✨ &lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cbp0VA/dJMcajoNIef/J31FGmkkHxU50SNVE1nEAk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cbp0VA/dJMcajoNIef/J31FGmkkHxU50SNVE1nEAk/img.png&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-is-animation=&quot;false&quot; data-filename=&quot;3.blur.png&quot; width=&quot;397&quot; height=&quot;529&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot; id=&quot;kEditorPhotosEditingImage-5&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cbp0VA/dJMcajoNIef/J31FGmkkHxU50SNVE1nEAk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcbp0VA%2FdJMcajoNIef%2FJ31FGmkkHxU50SNVE1nEAk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3024&quot; height=&quot;4032&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/BkoEV/dJMb990UP71/N4v0m0waaKbOgm9tCNtyTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/BkoEV/dJMb990UP71/N4v0m0waaKbOgm9tCNtyTk/img.png&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-is-animation=&quot;false&quot; data-filename=&quot;4.blur.png&quot; width=&quot;275&quot; height=&quot;367&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.4186%;&quot; id=&quot;kEditorPhotosEditingImage-6&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/BkoEV/dJMb990UP71/N4v0m0waaKbOgm9tCNtyTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBkoEV%2FdJMb990UP71%2FN4v0m0waaKbOgm9tCNtyTk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3024&quot; height=&quot;4032&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;교육 중 가장 동기부여가 되었던 순간은 SK쉴더스 본사 현장실습 날이었습니다. 실제 이날 세미나에서는&lt;/p&gt;
&lt;p data-path-to-node=&quot;5&quot; data-ke-size=&quot;size16&quot;&gt;탑서트(Top-CERT)팀의 &lt;b&gt;침해사고 대응&lt;/b&gt;부터 &lt;b data-index-in-node=&quot;125&quot; data-path-to-node=&quot;5&quot;&gt;보안관제, 모의해킹, 컨설팅, 취약점 분석&lt;/b&gt;까지 각 직무 분야의 현업 전문가이자 높으신 실무 책임자분들이 직접 오셔서 깊이 있는 실무 트렌드 강연을 진행해 주셨는데요.&lt;/p&gt;
&lt;p data-path-to-node=&quot;5&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;모든 강연이 정말 유익하고 뜻깊었지만, 특히 제가 준비하던 &lt;b data-index-in-node=&quot;33&quot; data-path-to-node=&quot;6&quot;&gt;보안관제 직무의 강연&lt;/b&gt;을 들을 때는 몰입도가 남달랐습니다. 실제 현업에서 발생하는 대규모 위협 대응 사례와 관제 운영의 핵심 프로세스를 직접 전해 들으면서, '내가 지금 하고 있는 보안관제 프로젝트를 반드시 성공적으로 끝내서, 나도 꼭 이곳의 일원이 되어 기여하고 싶다'라는 목표를 더 확실하게 굳히게 되었습니다.  &lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style4&quot; /&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt; &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;[쉴더스 라이프]&lt;span&gt; 눈 오던 오프라인 교육장 ❄️☃️ &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/by4Jit/dJMcabqSzcj/dQYTK1sUalV4hrY6jNumV0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/by4Jit/dJMcabqSzcj/dQYTK1sUalV4hrY6jNumV0/img.jpg&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-is-animation=&quot;false&quot; data-filename=&quot;7.jpg&quot; width=&quot;347&quot; height=&quot;463&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot; id=&quot;kEditorPhotosEditingImage-7&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/by4Jit/dJMcabqSzcj/dQYTK1sUalV4hrY6jNumV0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fby4Jit%2FdJMcabqSzcj%2FdQYTK1sUalV4hrY6jNumV0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3024&quot; height=&quot;4032&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c0GbtG/dJMcaglnFPQ/x2Z5Uo8dpWU5gooohvJ741/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c0GbtG/dJMcaglnFPQ/x2Z5Uo8dpWU5gooohvJ741/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;8.jpg&quot; width=&quot;341&quot; height=&quot;455&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.4186%;&quot; id=&quot;kEditorPhotosEditingImage-8&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c0GbtG/dJMcaglnFPQ/x2Z5Uo8dpWU5gooohvJ741/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc0GbtG%2FdJMcaglnFPQ%2Fx2Z5Uo8dpWU5gooohvJ741%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3024&quot; height=&quot;4032&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;공부로 지칠 때쯤 찾아온 소소한 힐링도 있었습니다. 눈이 펑펑 내리던 겨울날, 동기들과 옹기종기 모여 눈사람도 만들고, 눈덩이도 던지며 스트레스를 풀었어요. ⛄ 힘들 수 있는 과정이었지만, 이런 낭만과 &lt;b&gt;좋은 동기들&lt;/b&gt;이 있어 끝까지 완주할 수 있었습니다.   &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style4&quot; /&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;[쉴더스 라이프] 인사팀이 알려주는 자소서 &amp;amp; 면접 실전 팁   &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/PFGK9/dJMcabqSzYn/ZWAh3JOgXjAKMK788Fwld0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/PFGK9/dJMcabqSzYn/ZWAh3JOgXjAKMK788Fwld0/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;2261&quot; data-origin-height=&quot;3015&quot; data-filename=&quot;111.jpg&quot; width=&quot;330&quot; height=&quot;440&quot; style=&quot;width: 56.506%; margin-right: 10px;&quot; data-widthpercent=&quot;57.17&quot; id=&quot;kEditorPhotosEditingImage-9&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/PFGK9/dJMcabqSzYn/ZWAh3JOgXjAKMK788Fwld0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPFGK9%2FdJMcabqSzYn%2FZWAh3JOgXjAKMK788Fwld0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2261&quot; height=&quot;3015&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bVhGyA/dJMcahq6KeE/rtJi7PB0UyqedNWoWElKu1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bVhGyA/dJMcahq6KeE/rtJi7PB0UyqedNWoWElKu1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;400&quot; data-origin-height=&quot;712&quot; data-filename=&quot;112.jpg&quot; width=&quot;302&quot; height=&quot;538&quot; data-widthpercent=&quot;42.83&quot; style=&quot;width: 42.3312%;&quot; id=&quot;kEditorPhotosEditingImage-10&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bVhGyA/dJMcahq6KeE/rtJi7PB0UyqedNWoWElKu1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbVhGyA%2FdJMcahq6KeE%2FrtJi7PB0UyqedNWoWElKu1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;712&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;그리고 또 하나의 잊지 못할 &lt;/span&gt;&lt;b data-index-in-node=&quot;16&quot; data-path-to-node=&quot;52&quot;&gt;쉴더스 라이프&lt;/b&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt; 에피소드! 어느 날, 인사팀에서 특별히 오셔서 &lt;/span&gt;&lt;b data-index-in-node=&quot;50&quot; data-path-to-node=&quot;52&quot;&gt;자기소개서와 면접 팁, 그리고 실제 면접 질문&lt;/b&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;까지 정말 자세하게 설명해 주셨어요.  &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 현업의 시선에서 들려주신 이야기라 그런지, 화면 속 &lt;b data-index-in-node=&quot;32&quot; data-path-to-node=&quot;53&quot;&gt;자기소개서 작성 팁&lt;/b&gt;과 &lt;b&gt;면접 실전 팁&lt;/b&gt; 모두 정말 유익했고, 제 취업 준비에 큰 &lt;b data-index-in-node=&quot;105&quot; data-path-to-node=&quot;53&quot;&gt;이정표&lt;/b&gt;가 되었습니다.   특히 면접 팁 중 실전 준비사항 부분은 나중에 최종 면접 때 당황하지 않고 제 실력을 발휘하는 데 결정적인 도움이 되었습니다. 이 자리를 빌려 감사의 인사를 전합니다!  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt; [최종 프로젝트]&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cb73wO/dJMcaccea5H/P94N7UzB4aCcwZbeujcnIK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cb73wO/dJMcaccea5H/P94N7UzB4aCcwZbeujcnIK/img.jpg&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-is-animation=&quot;false&quot; data-filename=&quot;5.jpg&quot; width=&quot;310&quot; height=&quot;413&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot; id=&quot;kEditorPhotosEditingImage-11&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cb73wO/dJMcaccea5H/P94N7UzB4aCcwZbeujcnIK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcb73wO%2FdJMcaccea5H%2FP94N7UzB4aCcwZbeujcnIK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3024&quot; height=&quot;4032&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dq0D0r/dJMcaccea5G/kprrrOF9tLb3muRtUsFrZ1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dq0D0r/dJMcaccea5G/kprrrOF9tLb3muRtUsFrZ1/img.jpg&quot; data-origin-width=&quot;1932&quot; data-origin-height=&quot;2576&quot; data-is-animation=&quot;false&quot; data-filename=&quot;6.jpg&quot; width=&quot;298&quot; height=&quot;397&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.4186%;&quot; id=&quot;kEditorPhotosEditingImage-12&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dq0D0r/dJMcaccea5G/kprrrOF9tLb3muRtUsFrZ1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdq0D0r%2FdJMcaccea5G%2FkprrrOF9tLb3muRtUsFrZ1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1932&quot; height=&quot;2576&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화이트 보드 일정표를 꽉 채우기 시작한 &lt;b data-index-in-node=&quot;36&quot; data-path-to-node=&quot;3&quot;&gt;26기(AI) 최종 프로젝트 및 멘토링 일정&lt;/b&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt; 10월부터 12월까지의 이 빽빽한 칸들이 저희 팀의 피와 땀을 고스란히 담고 있습니다.&lt;/span&gt;&lt;span&gt; 매일같이 쏟아지는 로그들과 AI 연동 코드 사이에서 사투를 벌이던 그 시기,&lt;/span&gt;&lt;span&gt; 가장 기억에 남는 에피소드는 단연 '중간발표 조 추첨 날'이었습니다.   &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;발표자가 누가 될지,&lt;/span&gt;&lt;span&gt; 긁어서 뽑는 무시무시한 복권 이벤트가 진행되었습니다.&lt;/span&gt;&lt;span&gt; 제 결과는...&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span&gt;사진처럼 &lt;/span&gt;&lt;b data-index-in-node=&quot;70&quot; data-path-to-node=&quot;4&quot;&gt;[발 표 대 기]&lt;/b&gt;&lt;span&gt; 였어요!&lt;/span&gt;&lt;span&gt; 긁는 순간 심장이 철렁했지만,&lt;/span&gt;&lt;span&gt; 덕분에 팀원들과 한바탕 크게 웃으며 긴장을 풀고 발표 준비에 더욱 전념할 수 있었던 최고의 추억입니다.  &lt;/span&gt;&lt;span&gt;&amp;nbsp;이제는 그 치열했던 최종 프로젝트를 성공적으로 마치고,&lt;/span&gt;&lt;span&gt; 이 추억을 담아 후배 루키즈들을 위한 이정표가 될 글을 작성하고 있으니,&lt;/span&gt;&lt;span&gt; 정말 감회가 새롭네요.  ✨ &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span&gt;[마지막 이야기] 최종 발표, 그리고 수료식  &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 마침내 찾아온 최종 프로젝트 발표 날이자 수료식! 그 빽빽했던 10월~12월의 일정이 주마등처럼 스쳐 지나가는 순간이었습니다.&lt;/p&gt;
&lt;figure contenteditable=&quot;false&quot; data-ke-type=&quot;emoticon&quot; data-ke-align=&quot;alignCenter&quot; data-emoticon-type=&quot;niniz&quot; data-emoticon-name=&quot;003&quot; data-emoticon-isanimation=&quot;false&quot; data-emoticon-src=&quot;https://t1.daumcdn.net/axz_keditor/emoticon/niniz/large/003.gif&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/axz_keditor/emoticon/niniz/large/003.gif&quot; width=&quot;150&quot; /&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZlh9r/dJMb99NiDHN/97gFLP0NQq7xPqPRjf4IB1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZlh9r/dJMb99NiDHN/97gFLP0NQq7xPqPRjf4IB1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;960&quot; data-origin-height=&quot;1707&quot; data-filename=&quot;e79f068f-547c-4e21-815c-4d8947fc9df8.jpg&quot; width=&quot;343&quot; height=&quot;610&quot; style=&quot;width: 49.4268%; margin-right: 10px;&quot; data-widthpercent=&quot;50.01&quot; id=&quot;kEditorPhotosEditingImage-13&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZlh9r/dJMb99NiDHN/97gFLP0NQq7xPqPRjf4IB1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZlh9r%2FdJMb99NiDHN%2F97gFLP0NQq7xPqPRjf4IB1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;960&quot; height=&quot;1707&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cle2ZE/dJMb99NiDHO/Wdkvt1fPhqC4wkXBjsvlxK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cle2ZE/dJMb99NiDHO/Wdkvt1fPhqC4wkXBjsvlxK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;949&quot; data-origin-height=&quot;1688&quot; data-filename=&quot;111111.jpg&quot; width=&quot;365&quot; height=&quot;649&quot; style=&quot;width: 49.4104%;&quot; data-widthpercent=&quot;49.99&quot; id=&quot;kEditorPhotosEditingImage-14&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cle2ZE/dJMb99NiDHO/Wdkvt1fPhqC4wkXBjsvlxK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcle2ZE%2FdJMb99NiDHO%2FWdkvt1fPhqC4wkXBjsvlxK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;949&quot; height=&quot;1688&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막 수료식 날, 강당의 큰 스크린에 &lt;b&gt;여러분들의 청춘과 앞날을, 멀리서 응원합니다.&lt;/b&gt;라는 문구가 뜰 때, 정말 코끝이 찡해지더라구요.   6개월간의 대장정을 함께한 동기들과의 마지막 시간이라 더욱 애틋했고, 이 감동을 원동력 삼아 &lt;b data-index-in-node=&quot;162&quot; data-path-to-node=&quot;64&quot;&gt;최종 합격&lt;/b&gt;이라는 목표까지 흔들림 없이 달릴 수 있었습니다. ✊ &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;&lt;span&gt;[합격 노하우] 노력의 결실, 진짜 SK쉴더스 신입사원이 되다!   &lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;10.blur (1).png&quot; data-origin-width=&quot;823&quot; data-origin-height=&quot;423&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/KWjLp/dJMcahLnLX6/0F7CSvlDkHSzNeqmr0JOl0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/KWjLp/dJMcahLnLX6/0F7CSvlDkHSzNeqmr0JOl0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/KWjLp/dJMcahLnLX6/0F7CSvlDkHSzNeqmr0JOl0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKWjLp%2FdJMcahLnLX6%2F0F7CSvlDkHSzNeqmr0JOl0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;823&quot; height=&quot;423&quot; data-filename=&quot;10.blur (1).png&quot; data-origin-width=&quot;823&quot; data-origin-height=&quot;423&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6개월 동안 포기하지 않고 열심히 달린 결과, 저는 과정을 무사히 수료한 것은 물론이고&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b data-path-to-node=&quot;37&quot; data-index-in-node=&quot;62&quot;&gt;그토록 바라던 SK쉴더스에 최종 합격하여 당당히 보안 전문가로 현업을 수행하고 있습니다!&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;  &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;화면 속 '최종합격을 진심으로 축하드립니다'라는 문구를 보았을 때의 그 감정은 평생 잊지 못할 것 같아요.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure contenteditable=&quot;false&quot; data-ke-type=&quot;emoticon&quot; data-ke-align=&quot;alignCenter&quot; data-emoticon-type=&quot;niniz&quot; data-emoticon-name=&quot;001&quot; data-emoticon-isanimation=&quot;false&quot; data-emoticon-src=&quot;https://t1.daumcdn.net/axz_keditor/emoticon/niniz/large/001.gif&quot;&gt;&lt;img src=&quot;https://t1.daumcdn.net/axz_keditor/emoticon/niniz/large/001.gif&quot; width=&quot;150&quot; /&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;화면 캡처 2026-05-31 144027.blur.png&quot; data-origin-width=&quot;517&quot; data-origin-height=&quot;393&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mmINM/dJMcabLdWfw/4eVKjTh3W4e9CZI6f05xtK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mmINM/dJMcabLdWfw/4eVKjTh3W4e9CZI6f05xtK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mmINM/dJMcabLdWfw/4eVKjTh3W4e9CZI6f05xtK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmmINM%2FdJMcabLdWfw%2F4eVKjTh3W4e9CZI6f05xtK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;517&quot; height=&quot;393&quot; data-filename=&quot;화면 캡처 2026-05-31 144027.blur.png&quot; data-origin-width=&quot;517&quot; data-origin-height=&quot;393&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공식 취업 후기 인터뷰에도 적었지만, 제가 생각하는 합격 비결은 &lt;b&gt;중간에 포기하지 않는 끈기&lt;/b&gt;였습니다!&amp;nbsp;6개월이라는 긴 시간 동안 새로운 기술을 배우며 불안할 때도 있었지만, &lt;b&gt;'끝까지 해내겠다&lt;/b&gt;'는 성실함과 책임감이 면접에서도 가장 큰 무기가 되었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;4&quot; data-ke-size=&quot;size16&quot;&gt;또한 혼자 준비했다면 정말 막막했을 텐데, 뜻이 같은 팀원들과 예상 질문을 주고받으며 &lt;b&gt;모의 면접&lt;/b&gt;을 진행하고 자소서와 포트폴리오를 피드백해 준 시간이 결정적인 도움이 되었습니다.&lt;/p&gt;
&lt;p data-path-to-node=&quot;4&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;5&quot; data-ke-size=&quot;size16&quot;&gt;지금 당장 완벽하지 않더라도 하루하루 배운 것을 내 것으로 만들다 보면 어느새 훌쩍 성장해 있는 자신을 발견하게 될 것입니다. 그러니 옆에 있는 &lt;b&gt;팀원들을 경쟁자가 아닌 든든한 동반자로 생각하고 끝까지 가보시길 바랍니다.&lt;/b&gt;  &lt;/p&gt;
&lt;p data-path-to-node=&quot;5&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-path-to-node=&quot;6&quot; data-ke-size=&quot;size16&quot;&gt;지식과 사람, 그리고 취업이라는 최고의 결과까지 선물해 준 SK쉴더스 루키즈! 보안 전문가를 꿈꾸는 분들이라면 망설이지 말고 꼭 도전해 보세요! 교육 과정이나 합격 팁에 대해 궁금한 점이 있다면 언제든 댓글 남겨주세요~!  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>SK-Rookies/후기</category>
      <category>SK쉴더스</category>
      <category>루키즈</category>
      <category>루키즈33기모집</category>
      <category>보안교육</category>
      <category>취업후기</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/45</guid>
      <comments>https://m1ngm1ng.tistory.com/45#entry45comment</comments>
      <pubDate>Sun, 31 May 2026 15:23:01 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 예외 처리 심화 &amp;ndash; raise와 사용자 정의 예외 클래스</title>
      <link>https://m1ngm1ng.tistory.com/20</link>
      <description>&lt;p data-end=&quot;274&quot; data-start=&quot;202&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;274&quot; data-start=&quot;202&quot; data-ke-size=&quot;size16&quot;&gt;이전 글에서는 try-except로 프로그램이 에러로 멈추지 않도록 하는 방법을 배웠죠.&lt;br /&gt;이번엔 한 단계 더 나아가서,&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;raise로 강제로 예외 발생&lt;/b&gt;하기&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;사용자 정의 예외 클래스(Custom Exception)&lt;/b&gt; 만들기를 배워볼 거예요.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;510&quot; data-start=&quot;499&quot; data-ke-size=&quot;size23&quot;&gt;1️⃣raise 키워드란?&lt;/h3&gt;
&lt;blockquote data-end=&quot;447&quot; data-start=&quot;382&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;447&quot; data-start=&quot;384&quot; data-ke-size=&quot;size16&quot;&gt;코드에서 직접 예외를 발생시키는 키워드.&lt;br /&gt;특정 상황에서 일부러 오류를 발생시켜서 흐름을 제어할 수 있어요.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756887424322&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 예제 1: 간단한 raise 사용
def divide(a, b):
    if b == 0:
        raise ZeroDivisionError(&quot;0으로 나눌 수 없습니다!&quot;)
    return a / b

print(divide(10, 2))  # 5.0
print(divide(10, 0))  # ZeroDivisionError 발생&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  raise는 &quot;이 상황은 프로그램에서 처리하지 않겠다!&quot;라고 알려주는 것과 같아요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;864&quot; data-start=&quot;842&quot; data-ke-size=&quot;size23&quot;&gt;2️⃣ 사용자 정의 예외 클래스(Custom Exception)&lt;/h3&gt;
&lt;blockquote data-end=&quot;820&quot; data-start=&quot;755&quot; data-ke-style=&quot;style2&quot;&gt;기본 예외로는 상황을 정확하게 표현하기 어려울 때,&lt;br /&gt;내가 직접 예외 클래스를 만들어 쓰면 코드 가독성이 올라가요.&lt;/blockquote&gt;
&lt;p data-end=&quot;820&quot; data-start=&quot;755&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756887474116&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 예제 2: 사용자 정의 예외
class NegativeNumberError(Exception):
    &quot;&quot;&quot;음수일 때 발생시키는 예외&quot;&quot;&quot;
    pass

def check_positive(num):
    if num &amp;lt; 0:
        raise NegativeNumberError(&quot;음수는 입력할 수 없습니다!&quot;)
    print(f&quot;{num}은(는) 올바른 값입니다.&quot;)

try:
    check_positive(-5)
except NegativeNumberError as e:
    print(e)&lt;/code&gt;&lt;/pre&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;출력&lt;/div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1756887488451&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;음수는 입력할 수 없습니다!&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;3%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EC%84%A0%EC%96%B8%20%EB%B0%A9%EB%B2%95-1-2&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;3️⃣ 사용자 예외 활용하기&lt;/h3&gt;
&lt;pre id=&quot;code_1756887520948&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class PasswordTooShortError(Exception):
    &quot;&quot;&quot;비밀번호가 너무 짧을 때 발생&quot;&quot;&quot;
    pass

def set_password(pw):
    if len(pw) &amp;lt; 8:
        raise PasswordTooShortError(&quot;비밀번호는 최소 8자리 이상이어야 합니다.&quot;)
    print(&quot;비밀번호가 설정되었습니다.&quot;)

try:
    set_password(&quot;1234&quot;)
except PasswordTooShortError as e:
    print(f&quot;에러 발생: {e}&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력&lt;/p&gt;
&lt;pre id=&quot;code_1756887534066&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;에러 발생: 비밀번호는 최소 8자리 이상이어야 합니다.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;  오늘의 핵심 정리&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;키워드&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;개념 설명&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;raise&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;코드에서 직접 예외를 발생시킴&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;사용자 정의 예외&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;Exception 클래스를 상속받아 새 예외 정의&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;try-except + raise&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;상황별로 세밀한 에러 처리 가능&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-end=&quot;1750&quot; data-start=&quot;1738&quot; data-ke-style=&quot;style1&quot;&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;  언제 쓸까?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;데이터 검증 단계에서 조건을 만족하지 않을 때 바로 중단하고 알릴 때&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;코드 구조가 커질수록 &amp;ldquo;이런 경우는 오류 상황&amp;rdquo;이라고 명확히 표시하고 싶을 때&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;라이브러리, API 등 다른 사람이 쓸 코드를 작성할 때&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1891&quot; data-start=&quot;1878&quot; data-ke-size=&quot;size18&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1891&quot; data-start=&quot;1878&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1891&quot; data-start=&quot;1878&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; [파이썬] 웹 데이터 수집 기초 &amp;ndash; requests와 BeautifulSoup 사용법 &lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1983&quot; data-start=&quot;1894&quot; data-ke-size=&quot;size16&quot;&gt;그동안 배운 자료형, 조건문, 반복문, 함수, 클래스 등 파이썬 기초 내용을 한 번에 정리할 거예요.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1983&quot; data-start=&quot;1894&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1983&quot; data-start=&quot;1894&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/20</guid>
      <comments>https://m1ngm1ng.tistory.com/20#entry20comment</comments>
      <pubDate>Wed, 3 Sep 2025 04:41:22 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 표준 라이브러리 완전정리</title>
      <link>https://m1ngm1ng.tistory.com/19</link>
      <description>&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;파이썬을 쓰면서 &amp;ldquo;이건 내가 직접 만들 필요가 없는데?&amp;rdquo; 싶은 기능들이 있죠.&lt;br /&gt;그런 기능들은 대부분 표준 라이브러리(Standard Library)에 이미 포함돼 있어요.&lt;br /&gt;표준 라이브러리를 잘 활용하면 개발 속도가 훨씬 빨라지고 코드가 깔끔해집니다.  &lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-end=&quot;309&quot; data-start=&quot;293&quot; data-ke-size=&quot;size26&quot;&gt;  표준 라이브러리란?&lt;/h2&gt;
&lt;blockquote data-end=&quot;381&quot; data-start=&quot;310&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;381&quot; data-start=&quot;312&quot; data-ke-size=&quot;size16&quot;&gt;파이썬을 설치하면 자동으로 포함되는 라이브러리 모음.&lt;br /&gt;따로 설치할 필요 없이 import만 하면 바로 사용 가능!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;459&quot; data-start=&quot;383&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;432&quot; data-start=&quot;383&quot;&gt;수학 계산, 날짜&amp;middot;시간 처리, 파일&amp;middot;디렉토리 관리, 인터넷 요청 등 다양한 기능 제공&lt;/li&gt;
&lt;li data-end=&quot;459&quot; data-start=&quot;433&quot;&gt;초보자도 꼭 알아야 할 핵심 모듈이 많아요.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;1%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%EB%9E%80%3F-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;499&quot; data-end=&quot;510&quot;&gt;1️⃣ math &amp;ndash; 수학 관련 함수&lt;/h3&gt;
&lt;pre id=&quot;code_1756879598867&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import math

print(math.sqrt(16))       # 제곱근: 4.0
print(math.factorial(5))   # 팩토리얼: 120
print(math.pi)             # 원주율: 3.141592653589793&lt;/code&gt;&lt;/pre&gt;
&lt;p data-end=&quot;652&quot; data-start=&quot;637&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;652&quot; data-start=&quot;637&quot; data-ke-size=&quot;size16&quot;&gt;  &lt;b&gt;자주 쓰는 함수&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;747&quot; data-start=&quot;653&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;675&quot; data-start=&quot;653&quot;&gt;math.sqrt(x) : 제곱근&lt;/li&gt;
&lt;li data-end=&quot;704&quot; data-start=&quot;676&quot;&gt;math.factorial(x) : 팩토리얼&lt;/li&gt;
&lt;li data-end=&quot;729&quot; data-start=&quot;705&quot;&gt;math.pow(x, y) : x^y&lt;/li&gt;
&lt;li data-end=&quot;747&quot; data-start=&quot;730&quot;&gt;math.pi : 원주율&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;2%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EB%B3%B5%EC%82%AC%3A%20%EC%A7%84%EC%A7%9C%20%EB%B3%B5%EC%82%AC%EC%9D%BC%EA%B9%8C%3F-1-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;842&quot; data-end=&quot;864&quot;&gt;2️⃣ random &amp;ndash; 난수 생성&lt;/h3&gt;
&lt;pre id=&quot;code_1756879664445&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import random

print(random.random())                   # 0~1 사이 난수
print(random.randint(1,10))              # 1~10 사이 정수
print(random.choice([' ',' ',' '])) # 리스트에서 랜덤 선택&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;955&quot; data-start=&quot;940&quot; data-ke-size=&quot;size16&quot;&gt;  &lt;b&gt;자주 쓰는 함수&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1091&quot; data-start=&quot;956&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;984&quot; data-start=&quot;956&quot;&gt;random.random() : 0~1 난수&lt;/li&gt;
&lt;li data-end=&quot;1018&quot; data-start=&quot;985&quot;&gt;random.randint(a, b) : a~b 정수&lt;/li&gt;
&lt;li data-end=&quot;1055&quot; data-start=&quot;1019&quot;&gt;random.choice(seq) : 시퀀스에서 랜덤 추출&lt;/li&gt;
&lt;li data-end=&quot;1091&quot; data-start=&quot;1056&quot;&gt;random.shuffle(seq) : 리스트 요소 섞기&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;3%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EC%84%A0%EC%96%B8%20%EB%B0%A9%EB%B2%95-1-2&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;3️⃣ datetime &amp;ndash; 날짜와 시간&lt;/h3&gt;
&lt;pre id=&quot;code_1756879708387&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;from datetime import datetime

now = datetime.now()
print(now)                                # 현재 날짜와 시간
print(now.strftime(&quot;%Y-%m-%d %H:%M:%S&quot;))  # 포맷 지정&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1296&quot; data-start=&quot;1280&quot; data-ke-size=&quot;size16&quot;&gt;  &lt;b&gt;자주 쓰는 메서드&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1377&quot; data-start=&quot;1297&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1323&quot; data-start=&quot;1297&quot;&gt;datetime.now() : 현재 시각&lt;/li&gt;
&lt;li data-end=&quot;1352&quot; data-start=&quot;1324&quot;&gt;strftime() : 날짜&amp;middot;시간 포맷 변경&lt;/li&gt;
&lt;li data-end=&quot;1377&quot; data-start=&quot;1353&quot;&gt;timedelta : 시간 간격 계산&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;  os &amp;ndash; 운영체제 기능&lt;/h4&gt;
&lt;pre id=&quot;code_1756879758354&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import os

print(os.getcwd())        # 현재 작업 디렉토리
os.mkdir(&quot;test_folder&quot;)   # 폴더 생성
print(os.listdir())       # 현재 폴더 파일 목록&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1555&quot; data-start=&quot;1543&quot; data-ke-size=&quot;size16&quot;&gt;  &lt;b&gt;활용 예시&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1656&quot; data-start=&quot;1556&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1588&quot; data-start=&quot;1556&quot;&gt;경로 관리 (os.getcwd, os.path)&lt;/li&gt;
&lt;li data-end=&quot;1628&quot; data-start=&quot;1589&quot;&gt;폴더/파일 생성&amp;middot;삭제 (os.mkdir, os.remove)&lt;/li&gt;
&lt;li data-end=&quot;1656&quot; data-start=&quot;1629&quot;&gt;환경 변수 가져오기 (os.environ)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt; ️ sys &amp;ndash; 파이썬 인터프리터 제어&lt;/h4&gt;
&lt;pre id=&quot;code_1756879790521&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import sys

print(sys.version)      # 파이썬 버전
print(sys.path)         # 모듈 검색 경로&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1797&quot; data-start=&quot;1785&quot; data-ke-size=&quot;size16&quot;&gt;  &lt;b&gt;주요 기능&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1837&quot; data-start=&quot;1798&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1812&quot; data-start=&quot;1798&quot;&gt;파이썬 환경 정보 조회&lt;/li&gt;
&lt;li data-end=&quot;1837&quot; data-start=&quot;1813&quot;&gt;명령줄 인자 처리 (sys.argv)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;  urllib &amp;ndash; 인터넷 데이터 요청&lt;/h4&gt;
&lt;pre id=&quot;code_1756879822313&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;from urllib import request

response = request.urlopen(&quot;https://www.google.com&quot;)
print(response.status)  # 200&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  웹 크롤링이나 API 요청 기초에 활용 가능&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;  오늘의 핵심 정리&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;모듈&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;주요 기능&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;math&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;수학 계산&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;random&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;난수 생성&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;datetime&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;날짜&amp;middot;시간 처리&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;os&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;파일&amp;middot;폴더 관리&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;sys&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;파이썬 환경 제어&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;urllib&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;인터넷 요청&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2236&quot; data-start=&quot;2223&quot; data-ke-size=&quot;size18&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2236&quot; data-start=&quot;2223&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #1e1f21; text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;[파이썬] 예외 처리 심화 &amp;ndash; raise와 사용자 정의 예외 클래스&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2320&quot; data-start=&quot;2239&quot; data-ke-size=&quot;size16&quot;&gt;이제 에러를 직접 정의하고 더 정교하게 다루는 법을 배워봅시다!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2320&quot; data-start=&quot;2239&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2320&quot; data-start=&quot;2239&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/19</guid>
      <comments>https://m1ngm1ng.tistory.com/19#entry19comment</comments>
      <pubDate>Wed, 3 Sep 2025 04:41:10 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 코드 재사용을 위한 모듈 &amp;amp; 패키지 이해하기</title>
      <link>https://m1ngm1ng.tistory.com/18</link>
      <description>&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;앞에서는 함수, 클래스, 상속을 통해 코드 재사용성을 높였어요.&lt;br /&gt;이번에는 한 단계 더 나아가서,&lt;br /&gt;&lt;b&gt;파일 단위로 코드 재사용&lt;/b&gt;할 수 있는 모듈(Module)과&lt;br /&gt;&lt;b&gt;폴더 단위로 프로젝트를 구조화&lt;/b&gt;할 수 있는 패키지(Package)를 배워봅시다!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;499&quot; data-end=&quot;510&quot;&gt;1️⃣ 모듈(Module)이란?&lt;/h3&gt;
&lt;blockquote data-end=&quot;385&quot; data-start=&quot;326&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;385&quot; data-start=&quot;328&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 파일(.py) 하나가 모듈이에요.&lt;br /&gt;다른 파이썬 코드에서 불러와서 사용할 수 있죠.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-end=&quot;396&quot; data-start=&quot;387&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;396&quot; data-start=&quot;387&quot; data-ke-size=&quot;size16&quot;&gt;  &lt;b&gt;장점&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;440&quot; data-start=&quot;397&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;408&quot; data-start=&quot;397&quot;&gt;코드 재사용성 높다&lt;/li&gt;
&lt;li data-end=&quot;424&quot; data-start=&quot;409&quot;&gt;프로젝트 파일 관리 용이&lt;/li&gt;
&lt;li data-end=&quot;440&quot; data-start=&quot;425&quot;&gt;기능별로 코드 분리 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;460&quot; data-start=&quot;447&quot; data-ke-size=&quot;size18&quot;&gt;  모듈 만들기&lt;/p&gt;
&lt;p data-end=&quot;460&quot; data-start=&quot;447&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;460&quot; data-start=&quot;447&quot; data-ke-size=&quot;size16&quot;&gt;1. mymodule.py 파일 작성&lt;/p&gt;
&lt;pre id=&quot;code_1756867260426&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def add(a, b):
    return a + b

def greet(name):
    return f&quot;안녕하세요, {name}님!&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 다른 파일에서 모듈 불러오기&lt;/p&gt;
&lt;pre id=&quot;code_1756867301425&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import mymodule

print(mymodule.add(3, 5))    # 8
print(mymodule.greet(&quot;짱구&quot;))  # 안녕하세요, 짱구님!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  from-import로 함수 바로 불러오기&lt;/p&gt;
&lt;pre id=&quot;code_1756867570016&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;from mymodule import add, greet

print(add(2, 4))
print(greet(&quot;코딩&quot;))&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;842&quot; data-end=&quot;864&quot;&gt;2️⃣ 패키지(Package)란?&lt;/h3&gt;
&lt;blockquote data-end=&quot;921&quot; data-start=&quot;856&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;921&quot; data-start=&quot;858&quot; data-ke-size=&quot;size16&quot;&gt;여러 모듈(.py 파일)을 모아놓은 폴더&lt;br /&gt;__init__.py 파일이 있으면 패키지로 인식돼요.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-end=&quot;936&quot; data-start=&quot;923&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;936&quot; data-start=&quot;923&quot; data-ke-size=&quot;size18&quot;&gt;  예시 프로젝트 구조&lt;/p&gt;
&lt;pre id=&quot;code_1756867644889&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;myproject/
 ├── mypackage/
 │   ├── __init__.py
 │   ├── math_utils.py
 │   └── string_utils.py
 └── main.py&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  패키지 사용하기&lt;/p&gt;
&lt;pre id=&quot;code_1756867695280&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# math_utils.py
def square(x):
    return x * x

# main.py
from mypackage.math_utils import square

print(square(5))  # 25&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1244&quot; data-start=&quot;1220&quot; data-ke-size=&quot;size18&quot;&gt;  표준 라이브러리 vs 사용자 모듈&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1337&quot; data-start=&quot;1245&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1311&quot; data-start=&quot;1245&quot;&gt;&lt;b&gt;표준 라이브러리&lt;/b&gt;: 파이썬이 기본으로 제공하는 모듈 (math, random, datetime 등)&lt;/li&gt;
&lt;li data-end=&quot;1337&quot; data-start=&quot;1312&quot;&gt;&lt;b&gt;사용자 모듈&lt;/b&gt;: 내가 직접 만든 모듈&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  표준 라이브러리 예시&lt;/p&gt;
&lt;pre id=&quot;code_1756867766792&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import math
import random
import datetime

print(math.sqrt(16))            # 4.0
print(random.randint(1, 10))    # 1~10 사이 난수
print(datetime.datetime.now())  # 현재 날짜/시간&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  외부 패키지 설치하기&lt;/p&gt;
&lt;blockquote data-end=&quot;1599&quot; data-start=&quot;1564&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;1599&quot; data-start=&quot;1566&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 패키지 인덱스(PyPI)에서 pip으로 설치 가능&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756867815816&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;pip install requests&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756867823345&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import requests
res = requests.get(&quot;https://www.google.com&quot;)
print(res.status_code)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1754&quot; data-start=&quot;1739&quot; data-ke-size=&quot;size18&quot;&gt;  오늘의 핵심 정리&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1754&quot; data-start=&quot;1739&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;모듈&lt;/b&gt;: .py 파일 하나&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;패키지&lt;/b&gt;: 모듈을 묶은 폴더 (__init__.py 필수)&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;import, from-import로 모듈 불러오기&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;표준 라이브러리 &amp;amp; 외부 패키지로 기능 확장 가능&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1901&quot; data-start=&quot;1888&quot; data-ke-size=&quot;size18&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1901&quot; data-start=&quot;1888&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #1e1f21; text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;[파이썬] 표준 라이브러리 완전정리&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1984&quot; data-start=&quot;1904&quot; data-ke-size=&quot;size16&quot;&gt;파이썬이 기본으로 제공하는 표준 라이브러리를 활용해보아요.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1984&quot; data-start=&quot;1904&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1984&quot; data-start=&quot;1904&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/18</guid>
      <comments>https://m1ngm1ng.tistory.com/18#entry18comment</comments>
      <pubDate>Wed, 3 Sep 2025 04:40:43 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 클래스 상속 완전정복! super()로 더 깔끔하게</title>
      <link>https://m1ngm1ng.tistory.com/17</link>
      <description>&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;앞에서 클래스와 객체를 배웠죠.&lt;br /&gt;이번에는 객체지향 프로그래밍의 핵심 개념 중 하나인 상속(Inheritance)을 알아볼 거예요.&lt;br /&gt;상속을 잘 활용하면 &lt;b&gt;코드 재사용성&lt;/b&gt;이 크게 높아지고, 프로그램 구조가 깔끔해져요!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;499&quot; data-end=&quot;510&quot;&gt;1️⃣ 상속(Inheritance)이란?&lt;/h3&gt;
&lt;blockquote data-end=&quot;371&quot; data-start=&quot;316&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;371&quot; data-start=&quot;318&quot; data-ke-size=&quot;size16&quot;&gt;기존 클래스(부모 클래스)의 속성과 메서드를 물려받아 새로운 클래스(자식 클래스)를 만드는 것.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;448&quot; data-start=&quot;373&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;395&quot; data-start=&quot;373&quot;&gt;코드 중복을 줄이고 유지보수성을 높임&lt;/li&gt;
&lt;li data-end=&quot;422&quot; data-start=&quot;396&quot;&gt;자식 클래스에서 기능을 확장하거나 수정 가능&lt;/li&gt;
&lt;li data-end=&quot;448&quot; data-start=&quot;423&quot;&gt;큰 프로젝트에서 구조적인 코드 작성이 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  기본 문법&lt;/p&gt;
&lt;pre id=&quot;code_1756866121832&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class 부모클래스:
    코드...

class 자식클래스(부모클래스):
    코드...&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  예제 1: 기본 상속&lt;/p&gt;
&lt;pre id=&quot;code_1756866357568&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class Animal:
    def speak(self):
        print(&quot;동물이 소리를 냅니다.&quot;)

class Dog(Animal):
    def bark(self):
        print(&quot;멍멍!&quot;)

dog = Dog()
dog.speak()  # 동물이 소리를 냅니다.
dog.bark()   # 멍멍!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  Dog 클래스가 Animal 클래스를 상속받아 &lt;b&gt;메서드를 그대로 사용&lt;/b&gt;할 수 있음!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;842&quot; data-end=&quot;864&quot;&gt;2️⃣ 메서드 오버라이딩(Method Overriding)&lt;/h3&gt;
&lt;blockquote data-end=&quot;901&quot; data-start=&quot;861&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;901&quot; data-start=&quot;863&quot; data-ke-size=&quot;size16&quot;&gt;부모 클래스의 메서드를 자식 클래스에서 재정의해서 동작을 바꾸는 것.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756866427960&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class Animal:
    def speak(self):
        print(&quot;동물이 소리를 냅니다.&quot;)

class Cat(Animal):
    def speak(self):
        print(&quot;야옹!&quot;)

cat = Cat()
cat.speak()  # 야옹!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  부모 클래스의 speak()를 자식 클래스에서 새로 정의했어요.&lt;br /&gt;이걸 &lt;b&gt;메서드 오버라이딩&lt;/b&gt;이라고 해요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;3️⃣ super()로 부모 메서드 호출&lt;/h3&gt;
&lt;blockquote data-end=&quot;1215&quot; data-start=&quot;1176&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;1215&quot; data-start=&quot;1178&quot; data-ke-size=&quot;size16&quot;&gt;super()는 부모 클래스의 메서드나 속성을 호출할 때 사용.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756866791113&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class Animal:
    def __init__(self, name):
        self.name = name
        print(f&quot;{self.name} 생성!&quot;)

class Dog(Animal):
    def __init__(self, name, breed):
        super().__init__(name)
        self.breed = breed
        print(f&quot;{self.breed} 종입니다.&quot;)

dog = Dog(&quot;초코&quot;, &quot;푸들&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력&lt;/p&gt;
&lt;pre id=&quot;code_1756866804104&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;초코 생성!
푸들 종입니다.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  super() 덕분에 부모 클래스의 __init__ 메서드도 쉽게 호출 가능!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-end=&quot;1615&quot; data-start=&quot;1599&quot; data-ke-size=&quot;size23&quot;&gt;  상속 관계 확인하기&lt;/h3&gt;
&lt;p data-end=&quot;1676&quot; data-start=&quot;1616&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 내장 함수 isinstance()와 issubclass()로 클래스 관계를 확인할 수 있어요.&lt;/p&gt;
&lt;pre id=&quot;code_1756866900018&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;print(isinstance(dog, Dog))      # True
print(isinstance(dog, Animal))   # True
print(issubclass(Dog, Animal))   # True&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1833&quot; data-start=&quot;1818&quot; data-ke-size=&quot;size18&quot;&gt;  오늘의 핵심 정리&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1833&quot; data-start=&quot;1818&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;상속으로 코드 재사용성 극대화&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;자식 클래스에서 부모 메서드 &lt;b&gt;오버라이딩&lt;/b&gt; 가능&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;super()로 부모 클래스의 기능 호출&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;isinstance(), issubclass()로 상속 관계 확인&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1973&quot; data-start=&quot;1960&quot; data-ke-size=&quot;size18&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1973&quot; data-start=&quot;1960&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;background-color: #ffffff; color: #1e1f21; text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;[파이썬] 코드 재사용을 위한 모듈 &amp;amp; 패키지 이해하기&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2065&quot; data-start=&quot;1976&quot; data-ke-size=&quot;size16&quot;&gt;이제 파일 단위로 코드를 나누는 법을 배워서, 더 깔끔한 프로젝트를 만들어봅시다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2065&quot; data-start=&quot;1976&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/17</guid>
      <comments>https://m1ngm1ng.tistory.com/17#entry17comment</comments>
      <pubDate>Wed, 3 Sep 2025 04:40:10 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 객체지향 프로그래밍 입문: 클래스와 객체</title>
      <link>https://m1ngm1ng.tistory.com/16</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;파이썬을 배우면서 &lt;b&gt;함수&lt;/b&gt;로 코드를 재사용하는 방법을 익혔죠.&lt;br /&gt;이번엔 한 단계 더 나아가서, &lt;b&gt;객체지향 프로그래밍(OOP)&lt;/b&gt; 개념을 배워볼 거예요.&lt;br /&gt;OOP를 알면 코드 구조가 훨씬 깔끔해지고, 협업이나 유지보수에도 강력한 힘을 발휘합니다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;499&quot; data-end=&quot;510&quot;&gt;1️⃣ 객체지향 프로그래밍(OOP)이란?&lt;/h3&gt;
&lt;blockquote data-end=&quot;351&quot; data-start=&quot;314&quot; data-ke-style=&quot;style2&quot;&gt;
&lt;p data-end=&quot;351&quot; data-start=&quot;316&quot; data-ke-size=&quot;size16&quot;&gt;객체(Object)를 중심으로 프로그램을 설계하고 구성하는 방식&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;442&quot; data-start=&quot;353&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;386&quot; data-start=&quot;353&quot;&gt;객체는 속성(변수)과 동작(메서드)을 가짐&lt;/li&gt;
&lt;li data-end=&quot;413&quot; data-start=&quot;387&quot;&gt;현실 세계를 프로그래밍에 그대로 옮기기 쉬움&lt;/li&gt;
&lt;li data-end=&quot;442&quot; data-start=&quot;414&quot;&gt;코드의 &lt;b&gt;재사용성, 확장성, 가독성&lt;/b&gt;을 높임&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;2%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EB%B3%B5%EC%82%AC%3A%20%EC%A7%84%EC%A7%9C%20%EB%B3%B5%EC%82%AC%EC%9D%BC%EA%B9%8C%3F-1-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;842&quot; data-end=&quot;864&quot;&gt;2️⃣&lt;span&gt;&amp;nbsp;&lt;/span&gt; 클래스(Class)와 객체(Object)의 관계&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;용어&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;설명&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;클래스(Class)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;객체를 만들기 위한 &lt;b&gt;설계도&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;객체(Object)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;클래스로부터 만들어진 &lt;b&gt;실제 결과물&lt;/b&gt; (인스턴스라고도 부름)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;610&quot; data-start=&quot;601&quot; data-ke-size=&quot;size16&quot;&gt;  쉽게 말해&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;644&quot; data-start=&quot;611&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;622&quot; data-start=&quot;611&quot;&gt;클래스 = 설계도&lt;/li&gt;
&lt;li data-end=&quot;644&quot; data-start=&quot;623&quot;&gt;객체 = 설계도를 기반으로 만든 집&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1536&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TBSSL/btsQjQeh3ej/MaBkxxlskI7I1sKrVKjvO0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TBSSL/btsQjQeh3ej/MaBkxxlskI7I1sKrVKjvO0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TBSSL/btsQjQeh3ej/MaBkxxlskI7I1sKrVKjvO0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTBSSL%2FbtsQjQeh3ej%2FMaBkxxlskI7I1sKrVKjvO0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;500&quot; height=&quot;333&quot; data-origin-width=&quot;1536&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  클래스 정의와 객체 생성&lt;/p&gt;
&lt;pre id=&quot;code_1756862666482&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 클래스 정의
class Dog:
    def __init__(self, name):
        self.name = name
    
    def bark(self):
        print(f&quot;{self.name}가 멍멍 짖습니다!&quot;)

# 객체 생성
dog1 = Dog(&quot;초코&quot;)
dog1.bark()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력&lt;/p&gt;
&lt;pre id=&quot;code_1756862682296&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;초코가 멍멍 짖습니다!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-end=&quot;911&quot; data-start=&quot;899&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;911&quot; data-start=&quot;899&quot; data-ke-size=&quot;size18&quot;&gt;  코드 분석&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1080&quot; data-start=&quot;912&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;947&quot; data-start=&quot;912&quot;&gt;class Dog: &amp;rarr; Dog라는 이름의 클래스 정의&lt;/li&gt;
&lt;li data-end=&quot;988&quot; data-start=&quot;948&quot;&gt;__init__ &amp;rarr; 생성자 메서드, 객체가 만들어질 때 자동 실행&lt;/li&gt;
&lt;li data-end=&quot;1010&quot; data-start=&quot;989&quot;&gt;self &amp;rarr; 객체 자신을 가리킴&lt;/li&gt;
&lt;li data-end=&quot;1051&quot; data-start=&quot;1011&quot;&gt;dog1 = Dog(&quot;초코&quot;) &amp;rarr; Dog 클래스에서 객체 생성&lt;/li&gt;
&lt;li data-end=&quot;1080&quot; data-start=&quot;1052&quot;&gt;dog1.bark() &amp;rarr; 객체의 메서드 호출&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 id=&quot;3%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EC%84%A0%EC%96%B8%20%EB%B0%A9%EB%B2%95-1-2&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;3️⃣ 속성과 메서드&lt;/h3&gt;
&lt;p data-end=&quot;1122&quot; data-start=&quot;1102&quot; data-ke-size=&quot;size16&quot;&gt;클래스 안에는 두 가지가 들어갑니다!&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-end=&quot;1194&quot; data-start=&quot;1123&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li data-end=&quot;1156&quot; data-start=&quot;1123&quot;&gt;&lt;b&gt;속성(Attribute)&lt;/b&gt;: 객체가 가지는 데이터&lt;/li&gt;
&lt;li data-end=&quot;1194&quot; data-start=&quot;1157&quot;&gt;&lt;b&gt;메서드(Method)&lt;/b&gt;: 객체가 할 수 있는 행동(함수)&lt;/li&gt;
&lt;/ol&gt;
&lt;pre id=&quot;code_1756862774619&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;class Car:
    def __init__(self, brand, speed):
        self.brand = brand
        self.speed = speed

    def drive(self):
        print(f&quot;{self.brand} 자동차가 {self.speed}km/h로 달립니다!&quot;)

my_car = Car(&quot;Tesla&quot;, 120)
my_car.drive()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력&lt;/p&gt;
&lt;pre id=&quot;code_1756862828466&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Tesla 자동차가 120km/h로 달립니다!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt; &lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; 여러 객체 만들기&lt;/p&gt;
&lt;pre id=&quot;code_1756862873641&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;dog1 = Dog(&quot;초코&quot;)
dog2 = Dog(&quot;보리&quot;)

dog1.bark()  # 초코가 멍멍 짖습니다!
dog2.bark()  # 보리가 멍멍 짖습니다!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  클래스 하나로 여러 객체를 쉽게 만들 수 있어요.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1619&quot; data-start=&quot;1604&quot; data-ke-size=&quot;size18&quot;&gt;  오늘의 핵심 정리&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1619&quot; data-start=&quot;1604&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;클래스는 객체를 만드는 &lt;b&gt;설계도&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;객체는 클래스에서 찍어낸 &lt;b&gt;실제 인스턴스&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;__init__으로 초기값 설정, self로 자기 자신 참조&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;속성과 메서드로 객체의 상태와 동작을 정의&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1756&quot; data-start=&quot;1743&quot; data-ke-size=&quot;size18&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1756&quot; data-start=&quot;1743&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1756&quot; data-start=&quot;1743&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; [파이썬] 클래스 상속 완전정복! super()로 더 깔끔하게 &lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1840&quot; data-start=&quot;1759&quot; data-ke-size=&quot;size16&quot;&gt;클래스의 강력한 기능인 상속으로 코드 재사용성을 극대화해봅시다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1840&quot; data-start=&quot;1759&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/16</guid>
      <comments>https://m1ngm1ng.tistory.com/16#entry16comment</comments>
      <pubDate>Fri, 4 Jul 2025 00:08:06 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 에러 걱정 끝! try-except로 예외 처리 배우기</title>
      <link>https://m1ngm1ng.tistory.com/15</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;246&quot; data-start=&quot;148&quot; data-ke-size=&quot;size16&quot;&gt;코드를 짜다 보면 항상 &lt;b&gt;에러&lt;/b&gt;를 피할 수는 없어요.&lt;br /&gt;파일을 못 찾는다거나, 숫자가 아닌 값을 나누려고 한다거나&amp;hellip;&lt;br /&gt;그럴 때 프로그램이 그냥 멈춰버리면 곤란하겠죠?&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;326&quot; data-start=&quot;248&quot; data-ke-size=&quot;size16&quot;&gt;이럴 때 파이썬의&lt;b&gt; 예외 처리(Exception Handling&lt;/b&gt;)를 사용하면&lt;br /&gt;코드가 에러를 만나도 안전하게 실행될 수 있어요.  &lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;326&quot; data-start=&quot;248&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;510&quot; data-start=&quot;499&quot; data-ke-size=&quot;size23&quot;&gt;1️⃣&lt;span&gt;&amp;nbsp;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;예외(Exception)란?&lt;/h3&gt;
&lt;blockquote data-end=&quot;377&quot; data-start=&quot;355&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;p data-end=&quot;377&quot; data-start=&quot;357&quot; data-ke-size=&quot;size16&quot;&gt;프로그램 실행 중 발생하는 오류 상황&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;484&quot; data-start=&quot;379&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;484&quot; data-start=&quot;379&quot;&gt;&lt;b&gt;예시&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;484&quot; data-start=&quot;392&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;425&quot; data-start=&quot;392&quot;&gt;0으로 나누기 시도: ZeroDivisionError&lt;/li&gt;
&lt;li data-end=&quot;451&quot; data-start=&quot;428&quot;&gt;없는 변수 접근: NameError&lt;/li&gt;
&lt;li data-end=&quot;484&quot; data-start=&quot;454&quot;&gt;잘못된 파일명: FileNotFoundError&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;text-align: left;&quot; data-end=&quot;326&quot; data-start=&quot;248&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-end=&quot;326&quot; data-start=&quot;248&quot; data-ke-size=&quot;size18&quot;&gt;  기본 구조: try-except&lt;/p&gt;
&lt;pre id=&quot;code_1756841170454&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;try:
    실행할 코드
except 예외종류:
    예외 발생 시 실행할 코드&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;607&quot; data-start=&quot;579&quot;&gt;try: 에러가 발생할 수 있는 코드를 작성&lt;/li&gt;
&lt;li data-end=&quot;633&quot; data-start=&quot;608&quot;&gt;except: 에러가 나면 실행할 코드&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  예제 1: 기본 사용법&lt;/p&gt;
&lt;pre id=&quot;code_1756841201108&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;try:
    num = int(input(&quot;숫자를 입력하세요: &quot;))
    print(f&quot;10 / {num} = {10 / num}&quot;)
except:
    print(&quot;오류가 발생했습니다!&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;848&quot; data-start=&quot;788&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;848&quot; data-start=&quot;788&quot;&gt;숫자가 아닌 값을 입력하거나 0으로 나누면, 프로그램이 멈추는 대신 &lt;b&gt;예외 처리 메시지&lt;/b&gt;가 출력돼요.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;221&quot; data-origin-height=&quot;46&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cIX4Sc/btsQhCuMKSs/0WdevfKZCGG2MQUDKwHS1K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cIX4Sc/btsQhCuMKSs/0WdevfKZCGG2MQUDKwHS1K/img.png&quot; data-alt=&quot;숫자를 입력했을 경우&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cIX4Sc/btsQhCuMKSs/0WdevfKZCGG2MQUDKwHS1K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcIX4Sc%2FbtsQhCuMKSs%2F0WdevfKZCGG2MQUDKwHS1K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;221&quot; height=&quot;46&quot; data-origin-width=&quot;221&quot; data-origin-height=&quot;46&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;숫자를 입력했을 경우&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;223&quot; data-origin-height=&quot;45&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGT7gt/btsQhTwmkJj/eKyAF6ElLq6HcrKDJB7ARK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGT7gt/btsQhTwmkJj/eKyAF6ElLq6HcrKDJB7ARK/img.png&quot; data-alt=&quot;문자를 입력했을 경우&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGT7gt/btsQhTwmkJj/eKyAF6ElLq6HcrKDJB7ARK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGT7gt%2FbtsQhTwmkJj%2FeKyAF6ElLq6HcrKDJB7ARK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;223&quot; height=&quot;45&quot; data-origin-width=&quot;223&quot; data-origin-height=&quot;45&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;문자를 입력했을 경우&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  예제 2: 특정 예외 처리&lt;/p&gt;
&lt;pre id=&quot;code_1756841438752&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;try:
    num = int(input(&quot;숫자를 입력하세요: &quot;))
    print(10 / num)
except ZeroDivisionError:
    print(&quot;0으로 나눌 수 없습니다!&quot;)
except ValueError:
    print(&quot;숫자가 아닌 값을 입력하셨네요!&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;특정 오류를 구분해서 더 친절하게 안내 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;227&quot; data-origin-height=&quot;52&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/8dF88/btsQiHWtF7G/dAWy4CJwyFRNxbTg35UCV0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/8dF88/btsQiHWtF7G/dAWy4CJwyFRNxbTg35UCV0/img.png&quot; data-alt=&quot;0을 입력한 경우&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/8dF88/btsQiHWtF7G/dAWy4CJwyFRNxbTg35UCV0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8dF88%2FbtsQiHWtF7G%2FdAWy4CJwyFRNxbTg35UCV0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;227&quot; height=&quot;52&quot; data-origin-width=&quot;227&quot; data-origin-height=&quot;52&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;0을 입력한 경우&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;300&quot; data-origin-height=&quot;47&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pYCeE/btsQjwNGUzE/6MyYetMLtvxZqgbLc87Dq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pYCeE/btsQjwNGUzE/6MyYetMLtvxZqgbLc87Dq1/img.png&quot; data-alt=&quot;문자를 입력한 경우&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pYCeE/btsQjwNGUzE/6MyYetMLtvxZqgbLc87Dq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpYCeE%2FbtsQjwNGUzE%2F6MyYetMLtvxZqgbLc87Dq1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;300&quot; height=&quot;47&quot; data-origin-width=&quot;300&quot; data-origin-height=&quot;47&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;문자를 입력한 경우&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;2%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EB%B3%B5%EC%82%AC%3A%20%EC%A7%84%EC%A7%9C%20%EB%B3%B5%EC%82%AC%EC%9D%BC%EA%B9%8C%3F-1-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;864&quot; data-start=&quot;842&quot; data-ke-size=&quot;size23&quot;&gt;2️⃣ else와 finally&lt;/h3&gt;
&lt;pre id=&quot;code_1756841599069&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;try:
    print(&quot;나눗셈을 시도합니다.&quot;)
    result = 10 / 2
except ZeroDivisionError:
    print(&quot;0으로 나눌 수 없습니다!&quot;)
else:
    print(&quot;오류 없이 실행되었습니다.&quot;)
finally:
    print(&quot;프로그램 종료&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;키워드&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;설명&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;else&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;오류 없이 실행될 때 동작&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;finally&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;오류 여부와 관계없이 항상 실행&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  실전 예제: 안전한 파일 읽기&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;513&quot; data-origin-height=&quot;255&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vX4YQ/btsQiPGWBhA/KGJwXkZNigSXfKmGVUFuzk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vX4YQ/btsQiPGWBhA/KGJwXkZNigSXfKmGVUFuzk/img.png&quot; data-alt=&quot;파일 읽기 코드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vX4YQ/btsQiPGWBhA/KGJwXkZNigSXfKmGVUFuzk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvX4YQ%2FbtsQiPGWBhA%2FKGJwXkZNigSXfKmGVUFuzk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;513&quot; height=&quot;255&quot; data-origin-width=&quot;513&quot; data-origin-height=&quot;255&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;파일 읽기 코드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;330&quot; data-origin-height=&quot;43&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dNkY6r/btsQhChe9Sx/wTGghREwYBkSJI05FCCaEK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dNkY6r/btsQhChe9Sx/wTGghREwYBkSJI05FCCaEK/img.png&quot; data-alt=&quot;실행 결과&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dNkY6r/btsQhChe9Sx/wTGghREwYBkSJI05FCCaEK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdNkY6r%2FbtsQhChe9Sx%2FwTGghREwYBkSJI05FCCaEK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;330&quot; height=&quot;43&quot; data-origin-width=&quot;330&quot; data-origin-height=&quot;43&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;실행 결과&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1665&quot; data-start=&quot;1653&quot; data-ke-size=&quot;size18&quot;&gt;  오늘의 정리&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1665&quot; data-start=&quot;1653&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;try-except로 에러가 나도 프로그램이 멈추지 않게 만들기&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;except로 구체적인 오류를 구분하면 더 안전한 코드 작성 가능&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;else, finally로 흐름을 세밀하게 제어할 수 있음&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1805&quot; data-start=&quot;1792&quot; data-ke-size=&quot;size18&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1805&quot; data-start=&quot;1792&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1805&quot; data-start=&quot;1792&quot; data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;[파이썬]&lt;/b&gt;&lt;b&gt; 클래스 기초 &amp;ndash; 객체지향 프로그래밍(OOP) 첫걸음!&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1891&quot; data-start=&quot;1808&quot; data-ke-size=&quot;size16&quot;&gt;함수보다 한 단계 업그레이드된 객체지향 개념으로 넘어가 볼까요?&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/15</guid>
      <comments>https://m1ngm1ng.tistory.com/15#entry15comment</comments>
      <pubDate>Fri, 4 Jul 2025 00:07:57 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 파일 입출력 I/O 완전정리 &amp;ndash; open, read, write까지</title>
      <link>https://m1ngm1ng.tistory.com/14</link>
      <description>&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;파이썬 공부를 하다 보면 &lt;b&gt;데이터를 파일에 저장하거나 불러오는 작업&lt;/b&gt;이 꼭 필요해져요.&lt;br /&gt;오늘은 open(), read(), write()를 중심으로 &lt;b&gt;파일 입출력(File I/O&lt;/b&gt;)을 정리해볼게요!&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;text-align: left;&quot; data-ke-size=&quot;size26&quot;&gt;✅ 파일 입출력이란?&lt;/h2&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;352&quot; data-start=&quot;316&quot;&gt;&lt;b&gt;입력(Input)&lt;/b&gt;: 외부 파일에서 데이터를 읽어오는 것&lt;/li&gt;
&lt;li data-end=&quot;393&quot; data-start=&quot;353&quot;&gt;&lt;b&gt;출력(Output)&lt;/b&gt;: 프로그램에서 파일로 데이터를 저장하는 것&lt;/li&gt;
&lt;li data-end=&quot;441&quot; data-start=&quot;394&quot;&gt;파이썬에서는 open() 함수를 사용해 파일을 열고, 읽기/쓰기 작업을 해요.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;1%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%EB%9E%80%3F-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;510&quot; data-start=&quot;499&quot; data-ke-size=&quot;size23&quot;&gt;1️⃣  &amp;nbsp; 파일 열기 &amp;ndash; open()&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756839978804&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;f = open(&quot;파일명&quot;, &quot;모드&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;모드&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;의미&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;설명&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&quot;w&quot;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;쓰기 모드&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;새로 쓰기 (기존 내용 삭제)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&quot;a&quot;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;추가 모드&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;기존 파일 끝에 내용 추가&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&quot;b&quot;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;바이너리 모드&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;텍스트가 아닌 이진 데이터 (예: 이미지 파일)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&quot;t&quot;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;텍스트 모드&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;기본값 (생략 가능)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&quot;r&quot;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;읽기 모드&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;파일 읽기 전용&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756840013599&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# example.txt 파일 읽기
f = open(&quot;example.txt&quot;, &quot;r&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;2%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EB%B3%B5%EC%82%AC%3A%20%EC%A7%84%EC%A7%9C%20%EB%B3%B5%EC%82%AC%EC%9D%BC%EA%B9%8C%3F-1-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;864&quot; data-start=&quot;842&quot; data-ke-size=&quot;size23&quot;&gt;2️⃣  &amp;nbsp; 파일 읽기 &amp;ndash; read(), readline(), readlines()&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt; &amp;nbsp; 1. read(): 전체 읽기&lt;/p&gt;
&lt;pre id=&quot;code_1756840071662&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;f = open(&quot;example.txt&quot;, &quot;r&quot;)
content = f.read()
print(content)
f.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt; &amp;nbsp; 2. readline(): 한 줄씩 읽기&lt;/p&gt;
&lt;pre id=&quot;code_1756840111269&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;f = open(&quot;example.txt&quot;, &quot;r&quot;)
line = f.readline()
print(line)
f.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt; &amp;nbsp; 3. readlines(): 전체를 리스트로 읽기&lt;/p&gt;
&lt;pre id=&quot;code_1756840132765&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;f = open(&quot;example.txt&quot;, &quot;r&quot;)
lines = f.readlines()
for line in lines:
    print(line.strip())
f.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;3%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EC%84%A0%EC%96%B8%20%EB%B0%A9%EB%B2%95-1-2&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;3️⃣ ✍️&amp;nbsp; 파일 쓰기 &amp;ndash; write()&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756840235756&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;f = open(&quot;example.txt&quot;, &quot;w&quot;)
f.write(&quot;Hello, Python!\n&quot;)
f.write(&quot;파일 입출력 공부 중!\n&quot;)
f.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  &quot;w&quot; 모드로 열면 기존 내용이 &lt;b&gt;모두 지워지고 새로 작성&lt;/b&gt;돼요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  파일 추가 &amp;ndash; a 모드&lt;/p&gt;
&lt;pre id=&quot;code_1756840312796&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;f = open(&quot;example.txt&quot;, &quot;a&quot;)
f.write(&quot;이 줄은 추가됩니다!\n&quot;)
f.close()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1560&quot; data-start=&quot;1537&quot; data-ke-size=&quot;size18&quot;&gt;  파일 닫기 &amp;ndash; close()&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1647&quot; data-start=&quot;1561&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1602&quot; data-start=&quot;1561&quot;&gt;파일 작업을 마친 뒤에는 close()로 닫아야 리소스를 반환해요.&lt;/li&gt;
&lt;li data-end=&quot;1647&quot; data-start=&quot;1603&quot;&gt;파일을 닫지 않으면 데이터가 저장되지 않거나 메모리 누수가 생길 수 있어요.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  with문으로 파일 자동 닫기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756840369621&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;with open(&quot;example.txt&quot;, &quot;r&quot;) as f:
    content = f.read()
    print(content)&lt;/code&gt;&lt;/pre&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;with 구문을 쓰면 close()를 따로 호출하지 않아도 파일이 자동으로 닫혀요!&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  실전 예제: 메모장 프로그램 느낌&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;481&quot; data-origin-height=&quot;188&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cCizL2/btsQjOHu23W/jbj1OidOCaMiOirgpfB0Ik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cCizL2/btsQjOHu23W/jbj1OidOCaMiOirgpfB0Ik/img.png&quot; data-alt=&quot;vs code&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cCizL2/btsQjOHu23W/jbj1OidOCaMiOirgpfB0Ik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcCizL2%2FbtsQjOHu23W%2Fjbj1OidOCaMiOirgpfB0Ik%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;481&quot; height=&quot;188&quot; data-origin-width=&quot;481&quot; data-origin-height=&quot;188&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;vs code&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;725&quot; data-origin-height=&quot;308&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bHKXlk/btsQf9GY0aG/dluBts7WPxQP3BcQlTu9V0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bHKXlk/btsQf9GY0aG/dluBts7WPxQP3BcQlTu9V0/img.png&quot; data-alt=&quot;메모장 생성&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bHKXlk/btsQf9GY0aG/dluBts7WPxQP3BcQlTu9V0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbHKXlk%2FbtsQf9GY0aG%2FdluBts7WPxQP3BcQlTu9V0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;481&quot; height=&quot;204&quot; data-origin-width=&quot;725&quot; data-origin-height=&quot;308&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;메모장 생성&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size18&quot;&gt;  한눈에 정리&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;함수&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;설명&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;open(파일명, 모드)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;파일 열기&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;read()&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;파일 전체 읽기&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;readline()&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;한 줄씩 읽기&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;readlines()&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;전체를 리스트로 읽기&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;write()&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;파일 쓰기&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;close()&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;파일 닫기&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;with open()&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;자동으로 파일 닫기 처리&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2262&quot; data-start=&quot;2250&quot; data-ke-size=&quot;size18&quot;&gt;  오늘의 정리&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2262&quot; data-start=&quot;2250&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;open()으로 파일을 열고, read()나 write()로 작업&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;작업 후엔 close() 필수, with 구문으로 자동 관리 가능&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&quot;w&quot;, &quot;a&quot;, &quot;r&quot; 모드를 이해하면 파일 다루기가 훨씬 쉬워져요!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2417&quot; data-start=&quot;2404&quot; data-ke-size=&quot;size18&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2417&quot; data-start=&quot;2404&quot; data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2417&quot; data-start=&quot;2404&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; font-size: 16px; letter-spacing: 0px;&quot;&gt;[파이썬] 에러 걱정 끝! try-except로 예외 처리 배우기&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;2417&quot; data-start=&quot;2404&quot; data-ke-size=&quot;size16&quot;&gt;이제 파일을 다룰 때 생길 수 있는 오류를 안전하게 처리하는 법까지 배워봅시다!&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/14</guid>
      <comments>https://m1ngm1ng.tistory.com/14#entry14comment</comments>
      <pubDate>Fri, 4 Jul 2025 00:07:48 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 꼭 알아야 할 내장 함수들 &amp;ndash; len, range, type, list 등</title>
      <link>https://m1ngm1ng.tistory.com/13</link>
      <description>&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;파이썬을 공부하다 보면 매번 import를 하지 않아도 그냥 쓸 수 있는 함수들이 있죠.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;바로&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;내장 함수(Built-in Functions)&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;이 함수들은 개발할 때 정말 자주 등장하니, 한번 정리해두면 코드 작성 속도가 훨씬 빨라질 거예요.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style3&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size26&quot; data-start=&quot;499&quot; data-end=&quot;510&quot;&gt;✅ 내장 함수란?&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot; data-start=&quot;317&quot; data-end=&quot;393&quot;&gt;
&lt;li data-start=&quot;317&quot; data-end=&quot;338&quot;&gt;파이썬에서 기본적으로 제공하는 함수&lt;/li&gt;
&lt;li data-start=&quot;339&quot; data-end=&quot;361&quot;&gt;import 없이 바로 사용 가능&lt;/li&gt;
&lt;li data-start=&quot;362&quot; data-end=&quot;393&quot;&gt;리스트, 문자열, 숫자 등 다양한 자료형에 활용 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;1%EF%B8%8F%E2%83%A3%20%EA%B8%B0%EB%B3%B8%20%EA%B5%AC%EC%A1%B0-1-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;510&quot; data-start=&quot;499&quot; data-ke-size=&quot;size23&quot;&gt;1️⃣ 자주 쓰는 내장 함수 모음&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;422&quot; data-end=&quot;436&quot;&gt;  len()&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style2&quot; data-start=&quot;437&quot; data-end=&quot;471&quot;&gt;
&lt;p data-start=&quot;439&quot; data-end=&quot;471&quot; data-ke-size=&quot;size16&quot;&gt;시퀀스 자료형(리스트, 문자열 등)의 길이를 구할 때 사용&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;span&gt;fruits = [&lt;/span&gt;&lt;span&gt;&lt;span&gt;&quot;apple&quot;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&quot;banana&quot;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&quot;cherry&quot;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;]&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;print&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;len&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(fruits))&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;# 3&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot; data-start=&quot;549&quot; data-end=&quot;562&quot;&gt;
&lt;li data-start=&quot;549&quot; data-end=&quot;562&quot;&gt;문자열에도 사용 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;print&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;len&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;&quot;Python&quot;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;))&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;# 6&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style6&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;609&quot; data-end=&quot;625&quot;&gt;  range()&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style2&quot; data-start=&quot;626&quot; data-end=&quot;671&quot;&gt;
&lt;p data-start=&quot;628&quot; data-end=&quot;671&quot; data-ke-size=&quot;size16&quot;&gt;연속된 숫자 범위를 만들어주는 함수&lt;br /&gt;주로 for문과 함께 많이 사용&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;# 0부터 4까지 출력&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;for&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;i&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;in&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;range&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;5&lt;/span&gt;&lt;/span&gt;&lt;span&gt;):&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;print&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(i)&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;# 1부터 10까지 2씩 증가&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;for&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;i&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;in&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;range&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;1&lt;/span&gt;&lt;/span&gt;&lt;span&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;11&lt;/span&gt;&lt;/span&gt;&lt;span&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;2&lt;/span&gt;&lt;/span&gt;&lt;span&gt;):&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;print&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(i)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style6&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;794&quot; data-end=&quot;809&quot;&gt;  type()&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style2&quot; data-start=&quot;810&quot; data-end=&quot;826&quot;&gt;
&lt;p data-start=&quot;812&quot; data-end=&quot;826&quot; data-ke-size=&quot;size16&quot;&gt;변수나 값의 자료형을 확인&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;print&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;type&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span&gt;))&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;# &amp;lt;class 'int'&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;print&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;type&lt;/span&gt;&lt;/span&gt;&lt;span&gt;([&lt;/span&gt;&lt;span&gt;&lt;span&gt;1&lt;/span&gt;&lt;/span&gt;&lt;span&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;2&lt;/span&gt;&lt;/span&gt;&lt;span&gt;,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;3&lt;/span&gt;&lt;/span&gt;&lt;span&gt;]))&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;# &amp;lt;class 'list'&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style6&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;931&quot; data-end=&quot;946&quot;&gt;  list()&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style2&quot; data-start=&quot;947&quot; data-end=&quot;964&quot;&gt;
&lt;p data-start=&quot;949&quot; data-end=&quot;964&quot; data-ke-size=&quot;size16&quot;&gt;다른 자료형을 리스트로 변환&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div style=&quot;color: #333333; text-align: start;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;span&gt;text =&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&quot;python&quot;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;print&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&lt;span&gt;list&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(text))&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;# ['p', 'y', 't', 'h', 'o', 'n']&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;2%EF%B8%8F%E2%83%A3%20%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9D%98%20%EC%A3%BC%EC%9A%94%20%ED%8A%B9%EC%A7%95-1-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;511&quot; data-start=&quot;494&quot; data-ke-size=&quot;size23&quot;&gt;2️⃣ 그 외 자주 쓰이는 내장 함수&lt;/h3&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;함수&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;설명&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;예시&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;abs(x)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;절대값 반환&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;abs(-5) &amp;rarr; 5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;max(iterable)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;최댓값 반환&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;max([1,3,2]) &amp;rarr; 3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;min(iterable)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;최솟값 반환&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;min([1,3,2]) &amp;rarr; 1&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;sum(iterable)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;합계 반환&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;sum([1,2,3]) &amp;rarr; 6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;sorted(iterable)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;정렬된 리스트 반환&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;sorted([3,1,2]) &amp;rarr; [1,2,3]&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;tuple(iterable)&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;튜플로 변환&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;tuple([1,2]) &amp;rarr; (1,2)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style2&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1431&quot; data-end=&quot;1447&quot;&gt;  오늘의 한 줄 정리&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1431&quot; data-end=&quot;1447&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1431&quot; data-end=&quot;1447&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;내장 함수는 파이썬이 기본 제공 &amp;rarr;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;import 필요 없음!&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1431&quot; data-end=&quot;1447&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;len(), range(), type(), list()는 기본 중 기본&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1431&quot; data-end=&quot;1447&quot;&gt;&lt;span style=&quot;font-family: AppleSDGothicNeo-Regular, 'Malgun Gothic', '맑은 고딕', dotum, 돋움, sans-serif;&quot;&gt;개발하면서 자주 보이는 abs, max, min, sum, sorted도 익혀두기&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1431&quot; data-end=&quot;1447&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-style=&quot;style6&quot; data-ke-type=&quot;horizontalRule&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1431&quot; data-end=&quot;1447&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1602&quot; data-end=&quot;1615&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1602&quot; data-end=&quot;1615&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1602&quot; data-end=&quot;1615&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;[파이썬] 사용자 입출력 &amp;amp; 파일 읽고 쓰기 &amp;ndash; input, print, open 완전정복!&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot; data-start=&quot;1618&quot; data-end=&quot;1744&quot;&gt;이제 단순히 코드만 작성하는 게 아니라 사용자와 소통하고, 파일로 데이터 저장/읽기까지 해볼 거예요.&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/13</guid>
      <comments>https://m1ngm1ng.tistory.com/13#entry13comment</comments>
      <pubDate>Fri, 4 Jul 2025 00:07:38 +0900</pubDate>
    </item>
    <item>
      <title>[파이썬] 함수: 코드 재사용의 마법 &amp;ndash; def, return, 매개변수</title>
      <link>https://m1ngm1ng.tistory.com/12</link>
      <description>&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;파이썬을 조금 공부하다 보면 비슷한 코드를 계속 반복해서 쓰게 되잖아요?&lt;br /&gt;이럴 때 &lt;b&gt;함수(Function)&lt;/b&gt;를 사용하면 코드가 훨씬 깔끔하고 유지보수하기 좋아져요.&lt;br /&gt;오늘은 함수의 기초부터 return, 매개변수까지 한번 정리해봅시다! ✨&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;510&quot; data-start=&quot;499&quot; data-ke-size=&quot;size26&quot;&gt;✅ 함수란?&lt;/h2&gt;
&lt;blockquote data-end=&quot;411&quot; data-start=&quot;325&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;p data-end=&quot;411&quot; data-start=&quot;327&quot; data-ke-size=&quot;size16&quot;&gt;함수(Function)는 하나의 기능을 수행하는 코드 덩어리를 묶어두는 것!&lt;br /&gt;여러 번 호출해서 재사용할 수 있고, 코드 중복을 줄여줘요.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;459&quot; data-start=&quot;413&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;459&quot; data-start=&quot;413&quot;&gt;&lt;b&gt;장점&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;459&quot; data-start=&quot;425&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;436&quot; data-start=&quot;425&quot;&gt;코드 재사용 가능&lt;/li&gt;
&lt;li data-end=&quot;448&quot; data-start=&quot;439&quot;&gt;유지보수 쉬움&lt;/li&gt;
&lt;li data-end=&quot;459&quot; data-start=&quot;451&quot;&gt;가독성 향상&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;1%EF%B8%8F%E2%83%A3%20%EA%B8%B0%EB%B3%B8%20%EA%B5%AC%EC%A1%B0-1-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot; data-start=&quot;499&quot; data-end=&quot;510&quot;&gt;1️⃣ 함수의 기본 구조&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre id=&quot;code_1756839162869&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def 함수이름(매개변수):
    실행할 코드
    return 반환값&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 127px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;&lt;b&gt;키워드&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;&lt;b&gt;설명&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;def&lt;/td&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;함수를 정의할 때 사용&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;함수이름&lt;/td&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;함수의 이름 (의미 있게 지으면 좋아요!)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;매개변수&lt;/td&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;함수로 전달되는 값(옵션)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 22px;&quot;&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;return&lt;/td&gt;
&lt;td style=&quot;height: 22px; text-align: center;&quot;&gt;함수가 결과값을 반환할 때 사용&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  예제 1: 간단한 함수&lt;/p&gt;
&lt;pre id=&quot;code_1756839296597&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def say_hello():
    print(&quot;안녕하세요!&quot;)

say_hello()&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력&lt;/p&gt;
&lt;pre id=&quot;code_1756839319564&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;안녕하세요!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;  예제 2: 매개변수 사용&lt;/p&gt;
&lt;pre id=&quot;code_1756839350307&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def greet(name):
    print(f&quot;안녕, {name}!&quot;)

greet(&quot;토리&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출력&lt;/p&gt;
&lt;pre id=&quot;code_1756839372837&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;안녕, 토리!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 id=&quot;2%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EB%B3%B5%EC%82%AC%3A%20%EC%A7%84%EC%A7%9C%20%EB%B3%B5%EC%82%AC%EC%9D%BC%EA%B9%8C%3F-1-1&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-end=&quot;864&quot; data-start=&quot;842&quot; data-ke-size=&quot;size23&quot;&gt;2️⃣ return으로 값 반환하기&lt;/h3&gt;
&lt;pre id=&quot;code_1756839407853&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def add(a, b):
    return a + b

result = add(5, 3)
print(result)  
# 8&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1077&quot; data-start=&quot;1049&quot;&gt;return은 &lt;b&gt;함수의 결과값&lt;/b&gt;을 돌려줌&lt;/li&gt;
&lt;li data-end=&quot;1114&quot; data-start=&quot;1078&quot;&gt;함수 호출한 자리에 값이 들어간다고 생각하면 이해하기 쉬워요!&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;3%EF%B8%8F%E2%83%A3%20%EB%B3%80%EC%88%98%20%EC%84%A0%EC%96%B8%20%EB%B0%A9%EB%B2%95-1-2&quot; style=&quot;background-color: #ffffff; color: #353638; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;3️⃣ 매개변수 종류&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 기본 매개변수&lt;/p&gt;
&lt;pre id=&quot;code_1756839525589&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def greet(name=&quot;친구&quot;):
    print(f&quot;안녕, {name}!&quot;)

greet()        # 안녕, 친구!
greet(&quot;토리&quot;)  # 안녕, 토리!&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 키워드 인자&lt;/p&gt;
&lt;pre id=&quot;code_1756839550613&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def introduce(name, age):
    print(f&quot;{name}은 {age}살입니다.&quot;)

introduce(age=20, name=&quot;토리&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 가변 인자&lt;/p&gt;
&lt;pre id=&quot;code_1756839580294&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def sum_all(*numbers):
    return sum(numbers)

print(sum_all(1, 2, 3, 4))  
# 10&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: left;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size18&quot;&gt;  함수와 return의 관계 한눈에 보기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;상황&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;코드 예시&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;&lt;b&gt;설명&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;반환값 없음&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;return 생략&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;호출해도 None 반환&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;값 반환&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;return 값&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;결과를 돌려줌&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;여러 값 반환&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;return a, b&lt;/td&gt;
&lt;td style=&quot;text-align: center;&quot;&gt;튜플로 반환됨&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size18&quot;&gt;  오늘의 한 줄 정리&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;def&lt;/b&gt;로 함수 정의, ()로 호출&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;return&lt;/b&gt;으로 값을 돌려줄 수 있음&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;매개변수&lt;/b&gt;로 코드 활용성을 극대화&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;기본값, 키워드 인자, 가변 인자까지 활용 가능!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1447&quot; data-start=&quot;1431&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1615&quot; data-start=&quot;1602&quot; data-ke-size=&quot;size18&quot;&gt;  다음 글 예고&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1615&quot; data-start=&quot;1602&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-end=&quot;1744&quot; data-start=&quot;1618&quot; data-ke-size=&quot;size16&quot;&gt;[파이썬] 꼭 알아야 할 내장 함수들 &amp;ndash; len, range, type, list 등&lt;br /&gt;파이썬이 이미 만들어둔 유용한 함수들을 쓸 차례입니다!&lt;/p&gt;</description>
      <category>SK-Rookies/파이썬</category>
      <author>m1ngm1ng</author>
      <guid isPermaLink="true">https://m1ngm1ng.tistory.com/12</guid>
      <comments>https://m1ngm1ng.tistory.com/12#entry12comment</comments>
      <pubDate>Fri, 4 Jul 2025 00:05:58 +0900</pubDate>
    </item>
  </channel>
</rss>