<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>doomrender 님의 블로그</title>
    <link>https://doomrender.tistory.com/</link>
    <description>doomrender 님의 블로그 입니다.</description>
    <language>ko</language>
    <pubDate>Tue, 20 Oct 2026 03:07:45 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>doomrender</managingEditor>
    <item>
      <title>26-9-28 회고</title>
      <link>https://doomrender.tistory.com/14</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;cross origin을 배웠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 오리진이 존재하는데 굳이 왜 크로스 오리진이라는 개념을 만들었는지 의아했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 찾아보니 오리진은 명사처럼 쓰이는데, 크로스오리진은 2개의 오리진의 관계를 칭하는 것이었다. 즉 오리진이 서로 다르면 크로스 오리진 관계다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;찾아보지 않았으면 모르고 헷갈릴뻔했다.&lt;/p&gt;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/14</guid>
      <comments>https://doomrender.tistory.com/14#entry14comment</comments>
      <pubDate>Mon, 28 Sep 2026 11:27:57 +0900</pubDate>
    </item>
    <item>
      <title>aio3기 오프라인강의 회고 5</title>
      <link>https://doomrender.tistory.com/13</link>
      <description>&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;오늘 fastapi라는 프레임워크를 이용해서 서버를 구획하고 내가 요청을 보내고 응답을 받는 시간을 가졌다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;github 수업과 비슷하게 개념과 흐름을 주로 배우는 느낌이었다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;왜냐면 이걸 외워서 내가 수작업으로 작성할 수 없다는 확신을 받았기 때문이다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그래서 목표는 'llm에게 최소한 물어보면서 내가 작성할 수 있을 정도는 되자'였다. 내가 직접 다 머리속에 외우고 수작업으로 하나하나 작성해서 구동시킬 수 있을 정도의 이해가 필요하다고 하면 매우 어려운 강의다.&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;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그래서 특정 기능 소개와, 그 기능들을 어떤 연관을 갖는지, 그리고 이를 구동시키기 위해서는 어떤 형식을 띄는지만 놓고 보면 별로 내용이 없는거 같기도 하다.&amp;nbsp;&lt;/p&gt;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/13</guid>
      <comments>https://doomrender.tistory.com/13#entry13comment</comments>
      <pubDate>Mon, 21 Sep 2026 18:11:46 +0900</pubDate>
    </item>
    <item>
      <title>aio3기 오프라인강의 회고 4</title>
      <link>https://doomrender.tistory.com/12</link>
      <description>&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;35.&amp;nbsp;try,&amp;nbsp;except,&amp;nbsp;else,&amp;nbsp;finally&amp;nbsp;의&amp;nbsp;뜻&lt;br /&gt;&lt;br /&gt;try:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;minutes&amp;nbsp;=&amp;nbsp;int(raw_value)&lt;br /&gt;except&amp;nbsp;ValueError&amp;nbsp;as&amp;nbsp;error:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f&quot;{raw_value!r}&amp;nbsp;변환&amp;nbsp;실패:&amp;nbsp;{error}&quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;None&lt;br /&gt;else:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f&quot;{raw_value!r}&amp;nbsp;변환&amp;nbsp;성공&quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;minutes&lt;br /&gt;finally:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;입력&amp;nbsp;처리를&amp;nbsp;종료한다.&quot;)&lt;br /&gt;&lt;br /&gt;try&amp;nbsp;문법의&amp;nbsp;기본&amp;nbsp;구조는&amp;nbsp;이렇게&amp;nbsp;이해하면&amp;nbsp;됩니다.&lt;br /&gt;&lt;br /&gt;try:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;에러가&amp;nbsp;날&amp;nbsp;수도&amp;nbsp;있는&amp;nbsp;코드&lt;br /&gt;except&amp;nbsp;어떤에러:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;그&amp;nbsp;에러가&amp;nbsp;발생했을&amp;nbsp;때&amp;nbsp;실행&lt;br /&gt;else:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;에러가&amp;nbsp;발생하지&amp;nbsp;않았을&amp;nbsp;때&amp;nbsp;실행&lt;br /&gt;finally:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;성공하든&amp;nbsp;실패하든&amp;nbsp;마지막에&amp;nbsp;실행&lt;br /&gt;&lt;br /&gt;36.즉,&amp;nbsp;try문법은&amp;nbsp;try라는&amp;nbsp;상황에서,&amp;nbsp;에러시&amp;nbsp;except를&amp;nbsp;실행,&amp;nbsp;정상일시&amp;nbsp;else를&amp;nbsp;실행,&amp;nbsp;마무리는&amp;nbsp;레어나&amp;nbsp;정상&amp;nbsp;관계없이&amp;nbsp;finally로.&lt;br /&gt;&lt;br /&gt;37.except&amp;nbsp;는&amp;nbsp;키워드로&amp;nbsp;exception(예외)라는&amp;nbsp;단어로&amp;nbsp;만들어졌다.&lt;br /&gt;Try&amp;nbsp;문법에서&amp;nbsp;x라는&amp;nbsp;예외사항에서라는&amp;nbsp;뜻을&amp;nbsp;가진다(=except&amp;nbsp;x)&lt;br /&gt;그래서&amp;nbsp;'except&amp;nbsp;예외사항:'&amp;nbsp;꼴을&amp;nbsp;가진다&lt;br /&gt;&lt;br /&gt;except&amp;nbsp;ValueError:는&lt;br /&gt;try&amp;nbsp;안에서&amp;nbsp;발생한&amp;nbsp;예외&amp;nbsp;중에서&amp;nbsp;ValueError인&amp;nbsp;경우를&amp;nbsp;잡아서&amp;nbsp;처리하겠다는&amp;nbsp;뜻&lt;br /&gt;&lt;br /&gt;처럼&amp;nbsp;except&amp;nbsp;바로&amp;nbsp;뒤에&amp;nbsp;:가&amp;nbsp;안&amp;nbsp;붙고,&amp;nbsp;뭔가가&amp;nbsp;더&amp;nbsp;오는가?&lt;br /&gt;그&amp;nbsp;이유는&amp;nbsp;except가&amp;nbsp;&amp;ldquo;어떤&amp;nbsp;예외를&amp;nbsp;처리할&amp;nbsp;것인지&amp;rdquo;를&amp;nbsp;지정할&amp;nbsp;수&amp;nbsp;있는&amp;nbsp;문법이기&amp;nbsp;때문입니다.&lt;br /&gt;기본&amp;nbsp;형태는&amp;nbsp;이렇습니다;&lt;br /&gt;---------&lt;br /&gt;try:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;실행할&amp;nbsp;코드&lt;br /&gt;&lt;br /&gt;except&amp;nbsp;예외종류:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;예외가&amp;nbsp;발생했을&amp;nbsp;때&amp;nbsp;실행할&amp;nbsp;코드&lt;br /&gt;---------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;38.raise가&amp;nbsp;실행되면&amp;nbsp;그&amp;nbsp;순간&amp;nbsp;함수가&amp;nbsp;즉시&amp;nbsp;중단&lt;br /&gt;&lt;br /&gt;예.&lt;br /&gt;def&amp;nbsp;get_task(task_id:&amp;nbsp;int)&amp;nbsp;-&amp;gt;&amp;nbsp;str:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;task_id&amp;nbsp;not&amp;nbsp;in&amp;nbsp;TASKS:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;raise&amp;nbsp;TaskNotFoundError(f&quot;작업&amp;nbsp;{task_id}번이&amp;nbsp;없다&quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;TASKS[task_id]&lt;br /&gt;&lt;br /&gt;여기서&amp;nbsp;raise이&amp;nbsp;발생하면&amp;nbsp;밑&amp;nbsp;줄의&amp;nbsp;return까지&amp;nbsp;안가고&amp;nbsp;종료됨&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;39.언패킹&lt;br /&gt;pair&amp;nbsp;=&amp;nbsp;&quot;파이썬&amp;nbsp;입문&quot;,&amp;nbsp;True&lt;br /&gt;#여기서&amp;nbsp;패킹이&amp;nbsp;된다&lt;br /&gt;pair&amp;nbsp;=&amp;nbsp;(&quot;파이썬&amp;nbsp;입문&quot;,&amp;nbsp;True)&lt;br /&gt;&lt;br /&gt;title,&amp;nbsp;finished&amp;nbsp;=&amp;nbsp;pair&lt;br /&gt;#여기서&amp;nbsp;언패킹이&amp;nbsp;된다&lt;br /&gt;title&amp;nbsp;=&amp;nbsp;&quot;파이썬&amp;nbsp;입문&quot;&lt;br /&gt;finished&amp;nbsp;=&amp;nbsp;True&lt;br /&gt;&lt;br /&gt;print(&quot;언패킹:&quot;,&amp;nbsp;title,&amp;nbsp;finished)&lt;br /&gt;#print(&quot;언패킹:&quot;,&amp;nbsp;&quot;파이썬&amp;nbsp;입문&quot;,&amp;nbsp;True)&amp;nbsp;와&amp;nbsp;같으니&lt;br /&gt;언패킹:&amp;nbsp;파이썬&amp;nbsp;입문&amp;nbsp;True&lt;/p&gt;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/12</guid>
      <comments>https://doomrender.tistory.com/12#entry12comment</comments>
      <pubDate>Mon, 21 Sep 2026 18:11:01 +0900</pubDate>
    </item>
    <item>
      <title>aio3기 오프라인강의 회고 3</title>
      <link>https://doomrender.tistory.com/11</link>
      <description>&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;29.&lt;br /&gt;task1&amp;nbsp;=&amp;nbsp;[1,&amp;nbsp;4]&lt;br /&gt;task2&amp;nbsp;=&amp;nbsp;[1,&amp;nbsp;4]&lt;br /&gt;task3&amp;nbsp;=&amp;nbsp;task1&lt;br /&gt;일때,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;print(task1&amp;nbsp;==&amp;nbsp;task2)&amp;nbsp;&amp;nbsp;#&amp;nbsp;True&lt;br /&gt;print(task1&amp;nbsp;is&amp;nbsp;task2)&amp;nbsp;&amp;nbsp;#&amp;nbsp;False&lt;br /&gt;print(task3&amp;nbsp;==&amp;nbsp;task1)&amp;nbsp;&amp;nbsp;#&amp;nbsp;True&lt;br /&gt;print(task3&amp;nbsp;is&amp;nbsp;task1)&amp;nbsp;&amp;nbsp;#&amp;nbsp;True&lt;br /&gt;&lt;br /&gt;왜냐면&amp;nbsp;task1&amp;nbsp;과&amp;nbsp;task3는&amp;nbsp;같은&amp;nbsp;하나의&amp;nbsp;객체를&amp;nbsp;가르키고&amp;nbsp;있기&amp;nbsp;때문.&lt;br /&gt;task1&amp;nbsp;───&amp;rarr;&amp;nbsp;[1,&amp;nbsp;4]&lt;br /&gt;task3&amp;nbsp;───↗&lt;br /&gt;task2&amp;nbsp;───&amp;rarr;&amp;nbsp;[1,&amp;nbsp;4]&lt;br /&gt;&lt;br /&gt;==는&amp;nbsp;값이&amp;nbsp;같은가를&amp;nbsp;물어보는&amp;nbsp;것이고&lt;br /&gt;is는&amp;nbsp;같은&amp;nbsp;객체인가를&amp;nbsp;물어보는&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;30.&lt;br /&gt;질문:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;position(self)&amp;nbsp;-&amp;gt;&amp;nbsp;tuple[int,&amp;nbsp;int]:&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;(0,&amp;nbsp;0)&lt;br /&gt;&lt;br /&gt;여기서&amp;nbsp;왜&amp;nbsp;tuple(int,int)가&amp;nbsp;아니라&amp;nbsp;tuple[int,int]인지&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;답:&lt;br /&gt;()는&amp;nbsp;함수&amp;nbsp;호출&amp;nbsp;관련임.&lt;br /&gt;그래서&amp;nbsp;tuple(int,int)는&amp;nbsp;인자에&amp;nbsp;int,&amp;nbsp;int를&amp;nbsp;넣어서&amp;nbsp;tuple&amp;nbsp;라는&amp;nbsp;함수를&amp;nbsp;호출하겠다는&amp;nbsp;의미여서&amp;nbsp;안됨&lt;br /&gt;&lt;br /&gt;왜&amp;nbsp;하필&amp;nbsp;[]냐고&amp;nbsp;하면,&amp;nbsp;이건&amp;nbsp;Python&amp;nbsp;문법&amp;nbsp;설계에서&amp;nbsp;**&quot;어떤&amp;nbsp;객체/타입에&amp;nbsp;구체적인&amp;nbsp;매개&amp;nbsp;정보를&amp;nbsp;붙인다&quot;**는&amp;nbsp;표현으로&amp;nbsp;[]를&amp;nbsp;사용하기로&amp;nbsp;정했기&amp;nbsp;때문입니다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;31.&amp;nbsp;컴프리핸션&amp;nbsp;문법으로&amp;nbsp;list,&amp;nbsp;set,&amp;nbsp;dict,&amp;nbsp;tupple,&amp;nbsp;generator&amp;nbsp;형태로&amp;nbsp;만들고&amp;nbsp;싶을때&amp;nbsp;표현법:&lt;br /&gt;&lt;br /&gt;[number&amp;nbsp;*&amp;nbsp;number&amp;nbsp;for&amp;nbsp;number&amp;nbsp;in&amp;nbsp;numbers]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;list&lt;br /&gt;tuple(number&amp;nbsp;*&amp;nbsp;number&amp;nbsp;for&amp;nbsp;number&amp;nbsp;in&amp;nbsp;numbers)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #tuple&lt;br /&gt;{number&amp;nbsp;for&amp;nbsp;number&amp;nbsp;in&amp;nbsp;numbers}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;set&lt;br /&gt;{number:&amp;nbsp;number&amp;nbsp;*&amp;nbsp;number&amp;nbsp;for&amp;nbsp;number&amp;nbsp;in&amp;nbsp;numbers}&amp;nbsp; #&amp;nbsp;dict&lt;br /&gt;(number&amp;nbsp;*&amp;nbsp;number&amp;nbsp;for&amp;nbsp;number&amp;nbsp;in&amp;nbsp;numbers)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #&amp;nbsp;generator&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;32.&amp;nbsp;반복문&amp;nbsp;for는&amp;nbsp;~에&amp;nbsp;대해,&amp;nbsp;~마다&amp;nbsp;의&amp;nbsp;뜻이어서&lt;br /&gt;for&amp;nbsp;x&amp;nbsp;in&amp;nbsp;y는&amp;nbsp;y에&amp;nbsp;있는&amp;nbsp;x마다(=에&amp;nbsp;대해)&amp;nbsp;반복하라&amp;nbsp;라는&amp;nbsp;뜻임.&lt;br /&gt;&lt;br /&gt;33.&lt;br /&gt;Python에서는&lt;br /&gt;&lt;br /&gt;if&amp;nbsp;조건:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;여기가&amp;nbsp;if&amp;nbsp;블록&lt;br /&gt;for&amp;nbsp;x&amp;nbsp;in&amp;nbsp;something:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;여기가&amp;nbsp;for&amp;nbsp;블록&lt;br /&gt;def&amp;nbsp;함수():&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;여기가&amp;nbsp;함수&amp;nbsp;블록&lt;br /&gt;try:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;여기가&amp;nbsp;try&amp;nbsp;블록&lt;br /&gt;&lt;br /&gt;처럼&amp;nbsp;:&amp;nbsp;다음에&amp;nbsp;들여쓰기된&amp;nbsp;코드&amp;nbsp;묶음을&amp;nbsp;블록이라고&amp;nbsp;합니다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;34.try&amp;nbsp;안에서&amp;nbsp;return을&amp;nbsp;만나도&amp;nbsp;finally는&amp;nbsp;실행됩니다.&lt;br /&gt;단,&amp;nbsp;finally&amp;nbsp;안에도&amp;nbsp;return을&amp;nbsp;쓰면&amp;nbsp;원래&amp;nbsp;return&amp;nbsp;값을&amp;nbsp;덮어씀&lt;br /&gt;&lt;br /&gt;def&amp;nbsp;test():&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;try:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;10&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;finally:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;20&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;경우&amp;nbsp;결과는&amp;nbsp;20입니다.&lt;br /&gt;그래서&amp;nbsp;보통&amp;nbsp;finally&amp;nbsp;안에는&amp;nbsp;return을&amp;nbsp;넣지&amp;nbsp;않고,&amp;nbsp;파일&amp;nbsp;닫기나&amp;nbsp;정리&amp;nbsp;작업&amp;nbsp;같은&amp;nbsp;것을&amp;nbsp;넣습니다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/11</guid>
      <comments>https://doomrender.tistory.com/11#entry11comment</comments>
      <pubDate>Mon, 21 Sep 2026 18:07:57 +0900</pubDate>
    </item>
    <item>
      <title>[SK네트웍스 Family 엔코아AI캠퍼스] AI 오케스트레이션 캠프 3기_9월 1주차 회고</title>
      <link>https://doomrender.tistory.com/9</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;- `Keep` : 쉬는시간 시작과 끝이 늘어지지 않고 딱 제때 이루어지는 점. 화장실 손티슈 지급. 화장실 손 소독제 유치. 화장실 방향제 유치.&amp;nbsp; &lt;br /&gt;-&amp;nbsp;`Problem`&amp;nbsp;:&amp;nbsp;딱히&amp;nbsp;없지만&amp;nbsp;굳이&amp;nbsp;고르자면&amp;nbsp;환기시스템의&amp;nbsp;부재 &lt;br /&gt;-&amp;nbsp;`Try`&amp;nbsp;:&amp;nbsp;점심&amp;nbsp;시간에&amp;nbsp;환기하기. &lt;br /&gt;-&amp;nbsp;`Plus`&amp;nbsp;:&amp;nbsp;좋았던&amp;nbsp;점:&amp;nbsp;노트북&amp;nbsp;대여해준다.&amp;nbsp;이외&amp;nbsp;환경들이&amp;nbsp;좋다.&amp;nbsp;청결하다. &lt;br /&gt;-&amp;nbsp;`Minus`&amp;nbsp;:&amp;nbsp;아쉬웠던&amp;nbsp;점:&amp;nbsp;딱히&amp;nbsp;없긴하다. &lt;br /&gt;-&amp;nbsp;`Impressive`&amp;nbsp;:&amp;nbsp;인상적이었던&amp;nbsp;점.&amp;nbsp;환경이&amp;nbsp;좋고&amp;nbsp;여러&amp;nbsp;이벤트들이&amp;nbsp;많다.&amp;nbsp;도전&amp;nbsp;과제등. &lt;br /&gt;-&amp;nbsp;`DROP`&amp;nbsp;:&amp;nbsp;딱히.. &lt;br /&gt;-&amp;nbsp;`ADD`&amp;nbsp;:&amp;nbsp;딱히.. &lt;br /&gt;-&amp;nbsp;`KEEP`&amp;nbsp;:&amp;nbsp;Ai&amp;nbsp;프롬프트를&amp;nbsp;이용해서&amp;nbsp;복습하는&amp;nbsp;일. &lt;br /&gt;-&amp;nbsp;`IMPROVE`&amp;nbsp;:&amp;nbsp;수업&amp;nbsp;진행중&amp;nbsp;이해가&amp;nbsp;안되는&amp;nbsp;것을&amp;nbsp;미리&amp;nbsp;메모장에&amp;nbsp;옮겨두는&amp;nbsp;작업을&amp;nbsp;하는데,&amp;nbsp;그&amp;nbsp;과정에서&amp;nbsp;수업&amp;nbsp;흐름을&amp;nbsp;놓친다.&amp;nbsp;그래서&amp;nbsp;수업&amp;nbsp;진행&amp;nbsp;과정에&amp;nbsp;줄을&amp;nbsp;치는&amp;nbsp;걸로&amp;nbsp;대체해야겠다. &lt;br /&gt;-&amp;nbsp;**`FACTS`(사실,&amp;nbsp;객관)**&amp;nbsp;:&amp;nbsp;안될거&amp;nbsp;같아도&amp;nbsp;그냥&amp;nbsp;시작하면&amp;nbsp;된다.&amp;nbsp;체력&amp;nbsp;관리를&amp;nbsp;잘하자. &lt;br /&gt;-&amp;nbsp;**`FEELINGS`(느낌,&amp;nbsp;주관)**&amp;nbsp;:&amp;nbsp;아침에&amp;nbsp;덥다.&amp;nbsp; &lt;br /&gt;-&amp;nbsp;**`FINDINGS`(배운&amp;nbsp;것)**&amp;nbsp;:&amp;nbsp;자신의&amp;nbsp;언어로&amp;nbsp;표현하고&amp;nbsp;실행하는&amp;nbsp;것이&amp;nbsp;체화에&amp;nbsp;매우&amp;nbsp;직결적이다.&amp;nbsp;자신만의&amp;nbsp;표현을&amp;nbsp;의도적으로&amp;nbsp;하자. &lt;br /&gt;-&amp;nbsp;**`FUTURE`(미래)**&amp;nbsp;:&amp;nbsp;깃허브를&amp;nbsp;이용하여&amp;nbsp;프로젝트를&amp;nbsp;등록하고,&amp;nbsp;다운하는&amp;nbsp;것을&amp;nbsp;통해&amp;nbsp;더&amp;nbsp;많은&amp;nbsp;서비스와&amp;nbsp;정보에&amp;nbsp;접근할&amp;nbsp;수&amp;nbsp;있다. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;가장&amp;nbsp;저항&amp;nbsp;받고,&amp;nbsp;나의&amp;nbsp;투지를&amp;nbsp;불태우기도&amp;nbsp;가라앉게&amp;nbsp;한&amp;nbsp;것도&amp;nbsp;바로&amp;nbsp;문법이다. &lt;br /&gt;파이선에서&amp;nbsp;문법&amp;nbsp;중&amp;nbsp;키워드가&amp;nbsp;가지각색의&amp;nbsp;문법을&amp;nbsp;지닌다. &lt;br /&gt;&lt;br /&gt;하다가&amp;nbsp;느낀점은,&amp;nbsp;이거&amp;nbsp;다&amp;nbsp;외울&amp;nbsp;수&amp;nbsp;없고&amp;nbsp;다&amp;nbsp;외운다&amp;nbsp;해도&amp;nbsp;헷갈린다. &lt;br /&gt;그래서&amp;nbsp;'적당히만&amp;nbsp;알자'를&amp;nbsp;깨닫게&amp;nbsp;해준다. &lt;br /&gt;그런데&amp;nbsp;이게&amp;nbsp;왜&amp;nbsp;어려웠냐면,&amp;nbsp;나는&amp;nbsp;사전식&amp;nbsp;사람으로&amp;nbsp;특정&amp;nbsp;개념이&amp;nbsp;확실히&amp;nbsp;정의되어야지&amp;nbsp;다음&amp;nbsp;진도로&amp;nbsp;진행되는&amp;nbsp;사람인데,&amp;nbsp;새로운&amp;nbsp;키워드들의&amp;nbsp;문법이&amp;nbsp;발생하면서&amp;nbsp;정의가&amp;nbsp;안된&amp;nbsp;상태로&amp;nbsp;수업&amp;nbsp;진도가&amp;nbsp;나갔기&amp;nbsp;때문이다. &lt;br /&gt;그리고&amp;nbsp;그&amp;nbsp;문법도,&amp;nbsp;규칙성이&amp;nbsp;있는것도&amp;nbsp;있고,&amp;nbsp;정말&amp;nbsp;'이럴거면&amp;nbsp;규칙을&amp;nbsp;왜&amp;nbsp;만들지'&amp;nbsp;할&amp;nbsp;정도로&amp;nbsp;규칙이&amp;nbsp;그냥&amp;nbsp;사례별로&amp;nbsp;있는&amp;nbsp;경우도&amp;nbsp;있었다. &lt;br /&gt;그냥,&amp;nbsp;내가&amp;nbsp;ai를&amp;nbsp;이용해&amp;nbsp;사용할&amp;nbsp;때&amp;nbsp;참고할&amp;nbsp;정도로만&amp;nbsp;이해하자를&amp;nbsp;확실히&amp;nbsp;마인드셋을&amp;nbsp;하였다. &lt;br /&gt;이&amp;nbsp;말은,&amp;nbsp;영화를&amp;nbsp;찍을때&amp;nbsp;활영기법을&amp;nbsp;알아야지&amp;nbsp;내가&amp;nbsp;영화를&amp;nbsp;찍을때&amp;nbsp;그&amp;nbsp;구도를&amp;nbsp;설계할&amp;nbsp;수&amp;nbsp;있는것처럼, &lt;br /&gt;내가&amp;nbsp;Ai를&amp;nbsp;사용할때,&amp;nbsp;파이선의&amp;nbsp;기본&amp;nbsp;기능들을&amp;nbsp;알아야지&amp;nbsp;그래도&amp;nbsp;좀&amp;nbsp;더&amp;nbsp;ai를&amp;nbsp;잘&amp;nbsp;사용할&amp;nbsp;수&amp;nbsp;있지&amp;nbsp;않을까를&amp;nbsp;말하는&amp;nbsp;거다. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;결론적으로,&amp;nbsp;욕심을&amp;nbsp;버리고&amp;nbsp;,&amp;nbsp;욕심을&amp;nbsp;내리고,&amp;nbsp;그&amp;nbsp;프레임만&amp;nbsp;보는&amp;nbsp;마인드셋을&amp;nbsp;가져야겠다는게&amp;nbsp;교훈이다.&lt;/p&gt;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/9</guid>
      <comments>https://doomrender.tistory.com/9#entry9comment</comments>
      <pubDate>Fri, 18 Sep 2026 18:15:01 +0900</pubDate>
    </item>
    <item>
      <title>aio3기 오프라인강의 회고 2</title>
      <link>https://doomrender.tistory.com/8</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;20.함수에서&amp;nbsp;화면&amp;nbsp;출력값과&amp;nbsp;반환값은&amp;nbsp;독립적인&amp;nbsp;존재이다.&amp;nbsp;같은게&amp;nbsp;아니다. &lt;br /&gt;예) &lt;br /&gt;print(&quot;안녕하세요&quot;)는&amp;nbsp;&quot;안녕하세요&quot;를&amp;nbsp;반환하는&amp;nbsp;게&amp;nbsp;아닙니다. &lt;br /&gt;그냥&amp;nbsp;화면에&amp;nbsp;보여주는&amp;nbsp;겁니다. &lt;br /&gt;반환값은&amp;nbsp;None이다. &lt;br /&gt;&lt;br /&gt;예) &lt;br /&gt;def&amp;nbsp;greet(): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;안녕하세요&quot;) &lt;br /&gt;result&amp;nbsp;=&amp;nbsp;greet() &lt;br /&gt;print(result) &lt;br /&gt;를&amp;nbsp;실행하면&amp;nbsp;결과값은; &lt;br /&gt;&lt;br /&gt;안녕하세요 &lt;br /&gt;None &lt;br /&gt;&lt;br /&gt;이다. &lt;br /&gt;파이선&amp;nbsp;자체는&amp;nbsp;우항을&amp;nbsp;먼저&amp;nbsp;계산(=실행)하고&amp;nbsp;좌항으로&amp;nbsp;넘어가기&amp;nbsp;때문에 &lt;br /&gt;20-1.greet()이라는&amp;nbsp;함수를&amp;nbsp;실행함. &lt;br /&gt;20-2.결과로&amp;nbsp;안녕하세요&amp;nbsp;가&amp;nbsp;'화면에'출력됨 &lt;br /&gt;20-3.&amp;nbsp;하지만&amp;nbsp;반환값은&amp;nbsp;None임.&amp;nbsp;즉&amp;nbsp;우항은&amp;nbsp;None이&amp;nbsp;됨 &lt;br /&gt;20-4&amp;nbsp;이제&amp;nbsp;result&amp;nbsp;=&amp;nbsp;None&amp;nbsp;이니&amp;nbsp;&quot;None&quot;을&amp;nbsp;result에&amp;nbsp;대입함 &lt;br /&gt;20-5.&amp;nbsp;print(result)는&amp;nbsp;print(&quot;None&quot;)&amp;nbsp;이&amp;nbsp;됨. &lt;br /&gt;20-6.&amp;nbsp;그에&amp;nbsp;따라&amp;nbsp;화면에&amp;nbsp;None이&amp;nbsp;출력됨. &lt;br /&gt;&lt;br /&gt;21.&amp;nbsp;함수에&amp;nbsp;반환값의&amp;nbsp;표현이&amp;nbsp;없으면(=&amp;nbsp;result&amp;nbsp;언급이&amp;nbsp;없으면)&amp;nbsp;result&amp;nbsp;None이&amp;nbsp;생략된&amp;nbsp;것과&amp;nbsp;같다. &lt;br /&gt;예. &lt;br /&gt;def&amp;nbsp;greet(): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;안녕하세요&quot;) &lt;br /&gt;는 &lt;br /&gt;&lt;br /&gt;def&amp;nbsp;greet(): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;안녕하세요&quot;) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;None &lt;br /&gt;와&amp;nbsp;같다. &lt;br /&gt;&lt;br /&gt;22.&amp;nbsp;즉,&amp;nbsp;반환값은&amp;nbsp;default이고,&amp;nbsp;print는&amp;nbsp;그에&amp;nbsp;딸린&amp;nbsp;곁다리다. &lt;br /&gt;다시말해,&amp;nbsp;함수는&amp;nbsp;반환값을&amp;nbsp;무조건&amp;nbsp;도출하고,(그렇다고&amp;nbsp;자동으로&amp;nbsp;화면에&amp;nbsp;출력되지는&amp;nbsp;않음.) &lt;br /&gt;그&amp;nbsp;반환값이&amp;nbsp;return으로&amp;nbsp;명시가&amp;nbsp;안되어있으면&amp;nbsp;기본값처럼&amp;nbsp;None이&amp;nbsp;반환값으로&amp;nbsp;출력된다. &lt;br /&gt;&lt;br /&gt;예1. &lt;br /&gt;def&amp;nbsp;b(): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;&quot;안녕하세요&quot; &lt;br /&gt;에서&amp;nbsp;b()을&amp;nbsp;실행하면&amp;nbsp;아무것도&amp;nbsp;안뜨고 &lt;br /&gt;print(b())을&amp;nbsp;실행하면&amp;nbsp;&quot;안녕하세요&quot;가&amp;nbsp;뜬다 &lt;br /&gt;&lt;br /&gt;예2: &lt;br /&gt;def&amp;nbsp;greet(): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;안녕하세요&quot;) &lt;br /&gt;print(greet()) &lt;br /&gt;&lt;br /&gt;실행&amp;nbsp;순서는&amp;nbsp;이렇습니다. &lt;br /&gt;&lt;br /&gt;22-1.greet()&amp;nbsp;실행 &lt;br /&gt;22-2.함수&amp;nbsp;안의&amp;nbsp;print(&quot;안녕하세요&quot;)&amp;nbsp;실행 &lt;br /&gt;22-3.화면에&amp;nbsp;안녕하세요&amp;nbsp;출력 &lt;br /&gt;22-4.greet()는&amp;nbsp;return이&amp;nbsp;없으므로&amp;nbsp;None&amp;nbsp;반환 &lt;br /&gt;22-5.바깥의&amp;nbsp;print(...)가&amp;nbsp;그&amp;nbsp;None을&amp;nbsp;출력 &lt;br /&gt;&lt;br /&gt;그래서&amp;nbsp;최종&amp;nbsp;출력은: &lt;br /&gt;안녕하세요 &lt;br /&gt;None &lt;br /&gt;&lt;br /&gt;23.&amp;nbsp;틀린&amp;nbsp;문제: &lt;br /&gt;def&amp;nbsp;test(): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;&quot;A&quot; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;B&quot;) &lt;br /&gt;이면 &lt;br /&gt;print(test())로&amp;nbsp;화면에&amp;nbsp;출력되는&amp;nbsp;값은? &lt;br /&gt;&lt;br /&gt;return을&amp;nbsp;만나면&amp;nbsp;함수가&amp;nbsp;종료되어서&amp;nbsp;A만&amp;nbsp;출력된다. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(정리&amp;nbsp;필요) &lt;br /&gt;24. &lt;br /&gt;self는&amp;nbsp;지금&amp;nbsp;사용하는&amp;nbsp;객체다 &lt;br /&gt;first_book.summary()를&amp;nbsp;호출하면&amp;nbsp;self는&amp;nbsp;first_book이다.&amp;nbsp;second_book.summary()를&amp;nbsp;호출하면&amp;nbsp;self는&amp;nbsp;second_book이다.&amp;nbsp;메서드를&amp;nbsp;정의할&amp;nbsp;때는&amp;nbsp;첫&amp;nbsp;매개변수에&amp;nbsp;self를&amp;nbsp;적지만&amp;nbsp;호출할&amp;nbsp;때는&amp;nbsp;Python이&amp;nbsp;현재&amp;nbsp;객체를&amp;nbsp;전달한다. &lt;br /&gt;self.title은&amp;nbsp;현재&amp;nbsp;책&amp;nbsp;객체의&amp;nbsp;제목이다. &lt;br /&gt;first_book.title과&amp;nbsp;second_book.title은&amp;nbsp;서로&amp;nbsp;다른&amp;nbsp;객체에&amp;nbsp;저장된&amp;nbsp;값이다. &lt;br /&gt;summary()는&amp;nbsp;값을&amp;nbsp;출력하지&amp;nbsp;않고&amp;nbsp;반환하므로&amp;nbsp;다른&amp;nbsp;코드에서도&amp;nbsp;결과를&amp;nbsp;사용할&amp;nbsp;수&amp;nbsp;있다. &lt;br /&gt;&lt;br /&gt;관련&amp;nbsp;데이터와&amp;nbsp;그&amp;nbsp;데이터를&amp;nbsp;다루는&amp;nbsp;동작을&amp;nbsp;객체&amp;nbsp;안에&amp;nbsp;모으는&amp;nbsp;것을&amp;nbsp;캡슐화라고&amp;nbsp;한다.&amp;nbsp;이&amp;nbsp;예제의&amp;nbsp;title은&amp;nbsp;일반&amp;nbsp;속성이므로&amp;nbsp;first_book.title&amp;nbsp;=&amp;nbsp;&quot;수정&quot;처럼&amp;nbsp;객체&amp;nbsp;밖에서&amp;nbsp;직접&amp;nbsp;바꿀&amp;nbsp;수&amp;nbsp;있다.&amp;nbsp;바뀐&amp;nbsp;제목은&amp;nbsp;첫&amp;nbsp;번째&amp;nbsp;책의&amp;nbsp;summary()에만&amp;nbsp;반영된다. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;25. &lt;br /&gt;class&amp;nbsp;Counter: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;created_count&amp;nbsp;=&amp;nbsp;0 &lt;br /&gt;&lt;br /&gt;#클래스&amp;nbsp;속성임.&amp;nbsp;모든&amp;nbsp;counter&amp;nbsp;클래스는&amp;nbsp;이&amp;nbsp;것을&amp;nbsp;가진다. &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;__init__(self,&amp;nbsp;start:&amp;nbsp;int&amp;nbsp;=&amp;nbsp;0)&amp;nbsp;-&amp;gt;&amp;nbsp;None: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.value&amp;nbsp;=&amp;nbsp;start &lt;br /&gt;#이거는&amp;nbsp;인스턴스&amp;nbsp;속성임.&amp;nbsp;인스턴스에&amp;nbsp;뭔가를&amp;nbsp;하겠다. &lt;br /&gt;인스턴스&amp;nbsp;속성은&amp;nbsp;init&amp;nbsp;함수&amp;nbsp;내에서&amp;nbsp;정의됨 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Counter.created_count&amp;nbsp;+=&amp;nbsp;1 &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;increment(self)&amp;nbsp;-&amp;gt;&amp;nbsp;None: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.value&amp;nbsp;+=&amp;nbsp;1 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;first&amp;nbsp;=&amp;nbsp;Counter() &lt;br /&gt;second&amp;nbsp;=&amp;nbsp;Counter(start=10) &lt;br /&gt;&lt;br /&gt;first.increment() &lt;br /&gt;first.increment() &lt;br /&gt;second.increment() &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;26. &lt;br /&gt;def&amp;nbsp;increment(self): &lt;br /&gt;&amp;nbsp;self.value&amp;nbsp;+=&amp;nbsp;1&amp;nbsp; &lt;br /&gt;&amp;nbsp;self.value&amp;nbsp;+=&amp;nbsp;1는&amp;nbsp;value라는&amp;nbsp;속성&amp;nbsp;값에&amp;nbsp;+1을&amp;nbsp;한다는&amp;nbsp;뜻 &lt;br /&gt;&lt;br /&gt;27. &lt;br /&gt;class&amp;nbsp;Task: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;__init__(self,&amp;nbsp;title:&amp;nbsp;str)&amp;nbsp;-&amp;gt;&amp;nbsp;None: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.title&amp;nbsp;=&amp;nbsp;title &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.done&amp;nbsp;=&amp;nbsp;False &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;'self.done&amp;nbsp;=&amp;nbsp;False'는&amp;nbsp;초기값을&amp;nbsp;False로&amp;nbsp;한다는&amp;nbsp;뜻. &lt;br /&gt;'self.title&amp;nbsp;=&amp;nbsp;title'&amp;nbsp;에서&amp;nbsp;좌측title은&amp;nbsp;.title로&amp;nbsp;속성&amp;nbsp;문법이고,&amp;nbsp;우측title은&amp;nbsp;title&amp;nbsp;자체로&amp;nbsp;변수의&amp;nbsp;문법이다. &lt;br /&gt;그래서&amp;nbsp;이름이&amp;nbsp;title로&amp;nbsp;같아도&amp;nbsp;다른&amp;nbsp;객체로&amp;nbsp;구분한다. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;28. &lt;br /&gt;조건&amp;nbsp;표현식&amp;nbsp;또는&amp;nbsp;삼항&amp;nbsp;연산자(ternary&amp;nbsp;expression): &lt;br /&gt;일반적인&amp;nbsp;if문과는&amp;nbsp;조금&amp;nbsp;다른&amp;nbsp;문법 &lt;br /&gt;&lt;br /&gt;&amp;lt;보통의&amp;nbsp;if문&amp;gt; &lt;br /&gt;if&amp;nbsp;self.done: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;status&amp;nbsp;=&amp;nbsp;&quot;완료&quot; &lt;br /&gt;else: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;status&amp;nbsp;=&amp;nbsp;&quot;진행&amp;nbsp;중&quot; &lt;br /&gt;&lt;br /&gt;&amp;lt;(이걸&amp;nbsp;한&amp;nbsp;줄로&amp;nbsp;줄여&amp;nbsp;쓴&amp;nbsp;것이&amp;nbsp;바로)조건&amp;nbsp;표현식&amp;gt; &lt;br /&gt;atus&amp;nbsp;=&amp;nbsp;&quot;완료&quot;&amp;nbsp;if&amp;nbsp;self.done&amp;nbsp;else&amp;nbsp;&quot;진행&amp;nbsp;중&quot; &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>aio3기 오프라인 수업 복기</category>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/8</guid>
      <comments>https://doomrender.tistory.com/8#entry8comment</comments>
      <pubDate>Thu, 17 Sep 2026 18:07:21 +0900</pubDate>
    </item>
    <item>
      <title>aio 3기 오프라인강의 회고1</title>
      <link>https://doomrender.tistory.com/7</link>
      <description>&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;대부분 프리코스로 사전 온라인 강의로 배운 내용들을 오프라인 수업으로 다시 보게 되었다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;휘발되었던 정보도 있었다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;아는 내용 부분에서는 수업 분위기, 새로운 환경에 적응하는 시간을 가졌다.&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;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;1일차에서는 소크라테스식 복기 방법이 매우 인상적이었다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;llm에게 복기 프롬프트를 주어서 당일 학습한 내용을 효과적으로 복기하는 방법이었다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이를 통해 확실히 각인한 내용은 다음과 같다;&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;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;1.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;[]은 자료형 안의 특정 항목에 접근할 때 쓴다는 것이다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;()은 함수를 실행할 때 쓴다는 것은 이미 알고 있었는데 []로 확장할 생각을 못했다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그래서 dict 유형에서 키워드로 그와 관련된 값을 출력하기 위해선 print(parameter(&quot;키워드&quot;))는 안되고 print(parameter[&quot;키워드&quot;])가 된다는 것이다.&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;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;2. len 함수는 항목 개수를 구하는 함수이다&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그러므로 항목이 있는 자료형이면 다 사용할 수 있다는 것이다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;list와 tuple에 사용 안될 거 같은데 된다는 것이다. 항목 개수가 있으니까.&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;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;#또한 수업 중 궁금해서 따로 찾아본 내용에 관한 것이다&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;1.프롬프트 작성에 관해서 역할 설정이 중요하다는 내용이 있었는데 왜인지 이해가 안갔다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그러나 찾아보니 역할에 특정 변수 통제가 함축되어있기 때문이었다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그러나 변수 통제는 역할에 의한 것보다 직접 적는 것이 더 효과적이라고 한다.&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;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;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;2일차에는 내가 복습하고 싶은 내용을 메모장에 기록하기로 했다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;1.원소가&amp;nbsp;하나인&amp;nbsp;튜플은&amp;nbsp;(&quot;검색&quot;,)처럼&amp;nbsp;값&amp;nbsp;뒤에&amp;nbsp;쉼표를&amp;nbsp;붙인다.&amp;nbsp;(&quot;검색&quot;)은&amp;nbsp;괄호로&amp;nbsp;감싼&amp;nbsp;문자열일&amp;nbsp;뿐&amp;nbsp;튜플이&amp;nbsp;아니다.&lt;br /&gt;example&amp;nbsp;=&amp;nbsp;(&quot;검색&quot;)&amp;nbsp;이면&lt;br /&gt;print(type(example).__name__)&amp;nbsp;해서&amp;nbsp;타입&amp;nbsp;보면&amp;nbsp;str이고&lt;br /&gt;example&amp;nbsp;=&amp;nbsp;(&quot;검색&quot;,)로&amp;nbsp;대입해서&amp;nbsp;타입&amp;nbsp;보면&amp;nbsp;tuple이다.&lt;br /&gt;&lt;br /&gt;2.#&amp;nbsp;dict는&amp;nbsp;키와&amp;nbsp;값을&amp;nbsp;함께&amp;nbsp;저장한다.&lt;br /&gt;run&amp;nbsp;=&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;agent&quot;:&amp;nbsp;&quot;검색&amp;nbsp;에이전트&quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;status&quot;:&amp;nbsp;&quot;success&quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;seconds&quot;:&amp;nbsp;1.4,&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;#&amp;nbsp;새&amp;nbsp;키에&amp;nbsp;값을&amp;nbsp;대입하면&amp;nbsp;항목이&amp;nbsp;추가된다.&lt;br /&gt;run[&quot;reviewed&quot;]&amp;nbsp;=&amp;nbsp;True&lt;br /&gt;이러면&amp;nbsp;키값&amp;nbsp;reviewed&amp;nbsp;고,&amp;nbsp;값이&amp;nbsp;True&amp;nbsp;인&amp;nbsp;원소를&amp;nbsp;추가한거&lt;br /&gt;&lt;br /&gt;3.#&amp;nbsp;같은&amp;nbsp;dict&amp;nbsp;키에&amp;nbsp;새&amp;nbsp;값을&amp;nbsp;대입하면&amp;nbsp;기존&amp;nbsp;값이&amp;nbsp;덮어써진다.&lt;br /&gt;run&amp;nbsp;=&amp;nbsp;{&quot;agent&quot;:&amp;nbsp;&quot;검색&quot;,&amp;nbsp;&quot;status&quot;:&amp;nbsp;&quot;queued&quot;}&lt;br /&gt;run[&quot;status&quot;]&amp;nbsp;=&amp;nbsp;&quot;retrying&quot;&lt;br /&gt;print(&quot;1)&amp;nbsp;갱신한&amp;nbsp;상태:&quot;,&amp;nbsp;run[&quot;status&quot;])&lt;br /&gt;&lt;br /&gt;4.#&amp;nbsp;바깥쪽&amp;nbsp;키부터&amp;nbsp;안쪽&amp;nbsp;키&amp;nbsp;순서로&amp;nbsp;접근한다.&lt;br /&gt;print(&quot;1)&amp;nbsp;실행한&amp;nbsp;에이전트:&quot;,&amp;nbsp;run[&quot;agent&quot;])&lt;br /&gt;print(&quot;2)&amp;nbsp;실행&amp;nbsp;상태:&quot;,&amp;nbsp;run[&quot;result&quot;][&quot;status&quot;])&lt;br /&gt;&lt;br /&gt;#&amp;nbsp;sources는&amp;nbsp;list이므로&amp;nbsp;마지막에는&amp;nbsp;숫자&amp;nbsp;인덱스를&amp;nbsp;사용한다.&lt;br /&gt;print(&quot;3)&amp;nbsp;첫&amp;nbsp;번째&amp;nbsp;출처:&quot;,&amp;nbsp;run[&quot;result&quot;][&quot;sources&quot;][0])&lt;br /&gt;&lt;br /&gt;5.is_member&amp;nbsp;=&amp;nbsp;input(&quot;회원인가요?&amp;nbsp;(y/n):&amp;nbsp;&quot;)&amp;nbsp;==&amp;nbsp;&quot;y&quot;&lt;br /&gt;order_amount&amp;nbsp;=&amp;nbsp;int(input(&quot;주문&amp;nbsp;금액을&amp;nbsp;입력하세요:&amp;nbsp;&quot;))&lt;br /&gt;&lt;br /&gt;can_get_free_shipping&amp;nbsp;=&amp;nbsp;is_member&amp;nbsp;and&amp;nbsp;order_amount&amp;nbsp;&amp;gt;=&amp;nbsp;30000&lt;br /&gt;can_use_coupon&amp;nbsp;=&amp;nbsp;is_member&amp;nbsp;or&amp;nbsp;order_amount&amp;nbsp;&amp;gt;=&amp;nbsp;50000&lt;br /&gt;needs_shipping_fee&amp;nbsp;=&amp;nbsp;not&amp;nbsp;can_get_free_shipping&lt;br /&gt;&lt;br /&gt;print(&quot;1)&amp;nbsp;무료&amp;nbsp;배송&amp;nbsp;가능&amp;nbsp;여부:&quot;,&amp;nbsp;can_get_free_shipping)&lt;br /&gt;print(&quot;2)&amp;nbsp;쿠폰&amp;nbsp;사용&amp;nbsp;가능&amp;nbsp;여부:&quot;,&amp;nbsp;can_use_coupon)&lt;br /&gt;print(&quot;3)&amp;nbsp;배송비&amp;nbsp;필요&amp;nbsp;여부:&quot;,&amp;nbsp;needs_shipping_fee)&lt;br /&gt;&lt;br /&gt;--결과값--&lt;br /&gt;회원인가요?&amp;nbsp;(y/n):&amp;nbsp;y&lt;br /&gt;주문&amp;nbsp;금액을&amp;nbsp;입력하세요:&amp;nbsp;40000&lt;br /&gt;1)&amp;nbsp;무료&amp;nbsp;배송&amp;nbsp;가능&amp;nbsp;여부:&amp;nbsp;True&lt;br /&gt;2)&amp;nbsp;쿠폰&amp;nbsp;사용&amp;nbsp;가능&amp;nbsp;여부:&amp;nbsp;True&lt;br /&gt;3)&amp;nbsp;배송비&amp;nbsp;필요&amp;nbsp;여부:&amp;nbsp;False&lt;br /&gt;(01_python_basic)&amp;nbsp;PS&amp;nbsp;C:\workspace\01_python_basic&amp;gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;6.&amp;nbsp;나는&amp;nbsp;and,&amp;nbsp;or&amp;nbsp;등의&amp;nbsp;논리&amp;nbsp;연산자&amp;nbsp;앞&amp;nbsp;뒤에&amp;nbsp;조건식이&amp;nbsp;무조건&amp;nbsp;와야한다고&amp;nbsp;생각했는데,&amp;nbsp;상수든&amp;nbsp;문자열이든&amp;nbsp;어떤&amp;nbsp;값이&amp;nbsp;와도&amp;nbsp;됐다.&lt;br /&gt;&lt;br /&gt;주어진&amp;nbsp;조건:&lt;br /&gt;is_member&amp;nbsp;=&amp;nbsp;input(&quot;도서관&amp;nbsp;회원인가요?&amp;nbsp;(y/n):&amp;nbsp;&quot;)&amp;nbsp;==&amp;nbsp;&quot;y&quot;&lt;br /&gt;overdue_count&amp;nbsp;=&amp;nbsp;int(input(&quot;연체한&amp;nbsp;책&amp;nbsp;수를&amp;nbsp;입력하세요:&amp;nbsp;&quot;))에서&lt;br /&gt;&lt;br /&gt;내가&amp;nbsp;정리한&amp;nbsp;식:&lt;br /&gt;#&amp;nbsp;TODO:&amp;nbsp;연체한&amp;nbsp;책이&amp;nbsp;한&amp;nbsp;권&amp;nbsp;이상인지&amp;nbsp;has_overdue에&amp;nbsp;저장한다.&lt;br /&gt;has_overdue=overdue_count&amp;nbsp;&amp;gt;=&amp;nbsp;1&lt;br /&gt;#&amp;nbsp;TODO:&amp;nbsp;회원이고&amp;nbsp;연체한&amp;nbsp;책이&amp;nbsp;없을&amp;nbsp;때만&amp;nbsp;can_borrow를&amp;nbsp;True로&amp;nbsp;만든다.&lt;br /&gt;can_borrow&amp;nbsp;=&amp;nbsp;is_member==&quot;y&quot;&amp;nbsp;and&amp;nbsp;has_overdue&amp;lt;1&lt;br /&gt;&lt;br /&gt;다음과&amp;nbsp;같이&amp;nbsp;정리할&amp;nbsp;수&amp;nbsp;있었다&lt;br /&gt;#&amp;nbsp;TODO:&amp;nbsp;연체한&amp;nbsp;책이&amp;nbsp;한&amp;nbsp;권&amp;nbsp;이상인지&amp;nbsp;has_overdue에&amp;nbsp;저장한다.&lt;br /&gt;has_overdue=&amp;nbsp;overdue_count&amp;nbsp;&amp;gt;=&amp;nbsp;1&lt;br /&gt;#&amp;nbsp;TODO:&amp;nbsp;회원이고&amp;nbsp;연체한&amp;nbsp;책이&amp;nbsp;없을&amp;nbsp;때만&amp;nbsp;can_borrow를&amp;nbsp;True로&amp;nbsp;만든다.&lt;br /&gt;can_borrow&amp;nbsp;=&amp;nbsp;is_member&amp;nbsp;and&amp;nbsp;not&amp;nbsp;has_overdue&lt;br /&gt;&lt;br /&gt;즉,&amp;nbsp;is_member&amp;nbsp;는&amp;nbsp;이미&amp;nbsp;True나&amp;nbsp;False&amp;nbsp;값이&amp;nbsp;나온&amp;nbsp;상수이고,&lt;br /&gt;can_borrow는&amp;nbsp;그냥&amp;nbsp;1인지&amp;nbsp;0인지만&amp;nbsp;결정되면&amp;nbsp;되는거라&amp;nbsp;굳이&amp;nbsp;뒤에&amp;nbsp;조건식이&amp;nbsp;나올필요&amp;nbsp;없음.&lt;br /&gt;0&amp;nbsp;and&amp;nbsp;1&amp;nbsp;은&amp;nbsp;0값을&amp;nbsp;갖고&lt;br /&gt;1&amp;nbsp;and&amp;nbsp;1&amp;nbsp;은&amp;nbsp;1값을&amp;nbsp;갖지&lt;br /&gt;and&amp;nbsp;라는게&amp;nbsp;있어서&amp;nbsp;굳이&amp;nbsp;and&amp;nbsp;앞뒤로&amp;nbsp;조건식이&amp;nbsp;올&amp;nbsp;필요가&amp;nbsp;없다.&lt;br /&gt;&lt;br /&gt;7.&amp;nbsp;if가&amp;nbsp;True일때&amp;nbsp;수행할&amp;nbsp;식은&amp;nbsp;if&amp;nbsp;조건식&amp;nbsp;밑에&amp;nbsp;들여쓰기로&amp;nbsp;적어야한다.&lt;br /&gt;즉&amp;nbsp;들여쓰기된&amp;nbsp;모든&amp;nbsp;부분이&amp;nbsp;if블록이&amp;nbsp;된다.&lt;br /&gt;&lt;br /&gt;또한&amp;nbsp;if문과&amp;nbsp;for문은&amp;nbsp;:을&amp;nbsp;써야한다&lt;br /&gt;예)&lt;br /&gt;for&amp;nbsp;task&amp;nbsp;in&amp;nbsp;tasks:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(task)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8.내&amp;nbsp;의문점:is_member&amp;nbsp;=&amp;nbsp;input(&quot;도서관&amp;nbsp;회원인가요?&amp;nbsp;(y/n):&amp;nbsp;&quot;)&amp;nbsp;==&amp;nbsp;&quot;y&quot;&lt;br /&gt;여기서&amp;nbsp;우항&amp;nbsp;input(&quot;도서관&amp;nbsp;회원인가요?&amp;nbsp;(y/n):&amp;nbsp;&quot;)&amp;nbsp;==&amp;nbsp;&quot;y&quot;의&amp;nbsp;의미를&amp;nbsp;알려주세요.&lt;br /&gt;예를&amp;nbsp;들면&amp;nbsp;제&amp;nbsp;생각에는&amp;nbsp;우항은&amp;nbsp;[input(&quot;도서관&amp;nbsp;회원인가요?&amp;nbsp;(y/n):&amp;nbsp;&quot;)&amp;nbsp;와&amp;nbsp;&quot;y&quot;가&amp;nbsp;같다]만을&amp;nbsp;뜻하는거&amp;nbsp;같은데&amp;nbsp;왜&amp;nbsp;이게&amp;nbsp;0과&amp;nbsp;1&amp;nbsp;둘&amp;nbsp;중&amp;nbsp;하나인&amp;nbsp;bool&amp;nbsp;값을&amp;nbsp;갖는지&amp;nbsp;이해가&amp;nbsp;안갑니다&lt;br /&gt;&lt;br /&gt;답변:&lt;br /&gt;여기서&amp;nbsp;중요한&amp;nbsp;점:&amp;nbsp;==는&amp;nbsp;&quot;같은지&amp;nbsp;판단해서&amp;nbsp;그&amp;nbsp;판단&amp;nbsp;결과를&amp;nbsp;돌려주는&quot;&amp;nbsp;연산자입니다.&amp;nbsp;사람이&amp;nbsp;&quot;이&amp;nbsp;둘이&amp;nbsp;같나요?&quot;라고&amp;nbsp;물으면&amp;nbsp;&quot;네&quot;&amp;nbsp;또는&amp;nbsp;&quot;아니오&quot;로&amp;nbsp;답하듯이,&amp;nbsp;Python도&amp;nbsp;==를&amp;nbsp;계산하면&amp;nbsp;반드시&amp;nbsp;True&amp;nbsp;또는&amp;nbsp;False&amp;nbsp;중&amp;nbsp;하나를&amp;nbsp;값으로&amp;nbsp;반환합니다.&lt;br /&gt;+가&amp;nbsp;두&amp;nbsp;숫자를&amp;nbsp;받아서&amp;nbsp;합을&amp;nbsp;만들어내듯이,&amp;nbsp;==는&amp;nbsp;두&amp;nbsp;값을&amp;nbsp;받아서&amp;nbsp;bool을&amp;nbsp;만들어냅니다.&lt;br /&gt;&lt;br /&gt;9.&amp;nbsp;enumerate&amp;nbsp;함수의&amp;nbsp;이해와&amp;nbsp;언패킹:&lt;br /&gt;&lt;br /&gt;for&amp;nbsp;index,&amp;nbsp;task&amp;nbsp;in&amp;nbsp;enumerate(tasks,&amp;nbsp;start=1):&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f&quot;{index})&amp;nbsp;할&amp;nbsp;일:&amp;nbsp;{task}&quot;)&lt;br /&gt;이&amp;nbsp;값의&amp;nbsp;결과물이&amp;nbsp;다음과&amp;nbsp;같나여?&lt;br /&gt;1)&amp;nbsp;할&amp;nbsp;일:&amp;nbsp;책&amp;nbsp;읽기&lt;br /&gt;2)&amp;nbsp;할&amp;nbsp;일:&amp;nbsp;과제&amp;nbsp;하기&lt;br /&gt;3)&amp;nbsp;할&amp;nbsp;일:&amp;nbsp;산책하기&lt;br /&gt;&lt;br /&gt;답변:&lt;br /&gt;enumerate(tasks,&amp;nbsp;start=1)는&amp;nbsp;tasks&amp;nbsp;리스트를&amp;nbsp;돌면서,&amp;nbsp;각&amp;nbsp;항목마다&amp;nbsp;(순서번호,&amp;nbsp;항목값)&amp;nbsp;쌍을&amp;nbsp;하나씩&amp;nbsp;만들어줍니다.&lt;br /&gt;예를&amp;nbsp;들어&amp;nbsp;tasks&amp;nbsp;=&amp;nbsp;[&quot;책&amp;nbsp;읽기&quot;,&amp;nbsp;&quot;과제&amp;nbsp;하기&quot;,&amp;nbsp;&quot;산책하기&quot;]라면:&lt;br /&gt;enumerate(tasks,&amp;nbsp;start=1)은&amp;nbsp;내부적으로&amp;nbsp;이런&amp;nbsp;쌍들을&amp;nbsp;순서대로&amp;nbsp;생성합니다:&lt;br /&gt;(1,&amp;nbsp;&quot;책&amp;nbsp;읽기&quot;)&lt;br /&gt;(2,&amp;nbsp;&quot;과제&amp;nbsp;하기&quot;)&lt;br /&gt;(3,&amp;nbsp;&quot;산책하기&quot;)&lt;br /&gt;&lt;br /&gt;그리고&amp;nbsp;for&amp;nbsp;index,&amp;nbsp;task&amp;nbsp;in&amp;nbsp;...는&amp;nbsp;이&amp;nbsp;쌍&amp;nbsp;(1,&amp;nbsp;&quot;책&amp;nbsp;읽기&quot;)를&amp;nbsp;받아서&amp;nbsp;첫&amp;nbsp;번째&amp;nbsp;값은&amp;nbsp;index에,&amp;nbsp;두&amp;nbsp;번째&amp;nbsp;값은&amp;nbsp;task에&amp;nbsp;자동으로&amp;nbsp;나눠&amp;nbsp;담습니다&amp;nbsp;(이걸&amp;nbsp;&quot;언패킹&quot;이라고&amp;nbsp;부릅니다).&lt;br /&gt;index,&amp;nbsp;task&amp;nbsp;=&amp;nbsp;(1,&amp;nbsp;&quot;책&amp;nbsp;읽기&quot;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;10. 다음과&amp;nbsp;같은&amp;nbsp;형식으로&amp;nbsp;특정&amp;nbsp;수에&amp;nbsp;대한&amp;nbsp;9단을&amp;nbsp;만들어야했다;&lt;br /&gt;dan&amp;nbsp;=&amp;nbsp;int(input(&quot;몇&amp;nbsp;단을&amp;nbsp;출력할까요?&amp;nbsp;&quot;))&lt;br /&gt;#&amp;nbsp;TODO:&amp;nbsp;range()로&amp;nbsp;1부터&amp;nbsp;9까지&amp;nbsp;반복한다.&lt;br /&gt;#&amp;nbsp;TODO:&amp;nbsp;각&amp;nbsp;단계에서&amp;nbsp;&quot;3&amp;nbsp;x&amp;nbsp;1&amp;nbsp;=&amp;nbsp;3&quot;&amp;nbsp;형식으로&amp;nbsp;곱셈&amp;nbsp;결과를&amp;nbsp;출력한다.&lt;br /&gt;&lt;br /&gt;이걸&amp;nbsp;못하고&amp;nbsp;있었는데&amp;nbsp;이걸&amp;nbsp;해내는&amp;nbsp;식은&amp;nbsp;다음과&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;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;762&quot; data-origin-height=&quot;556&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UvlWV/dJMcafnTzQp/oit44mkNfF0KIxtpmoe0Y1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UvlWV/dJMcafnTzQp/oit44mkNfF0KIxtpmoe0Y1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UvlWV/dJMcafnTzQp/oit44mkNfF0KIxtpmoe0Y1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUvlWV%2FdJMcafnTzQp%2Foit44mkNfF0KIxtpmoe0Y1%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;762&quot; height=&quot;556&quot; data-origin-width=&quot;762&quot; data-origin-height=&quot;556&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&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;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;11.&amp;nbsp;elif&amp;nbsp;식은&amp;nbsp;첫&amp;nbsp;조건이&amp;nbsp;참이면&amp;nbsp;뒤&amp;nbsp;조건은&amp;nbsp;보지&amp;nbsp;않고&amp;nbsp;건너뛰지만,&amp;nbsp;if&amp;nbsp;식이&amp;nbsp;여러개&amp;nbsp;있으면,&amp;nbsp;모든&amp;nbsp;if식을&amp;nbsp;다&amp;nbsp;둘러본다.&lt;br /&gt;단,&amp;nbsp;오류가&amp;nbsp;안나려면&amp;nbsp;여러개의&amp;nbsp;if식들이&amp;nbsp;상호배타적이어야&amp;nbsp;한다.(=겹치는&amp;nbsp;부분이&amp;nbsp;없어야&amp;nbsp;한다)&lt;br /&gt;&lt;br /&gt;12.&amp;nbsp;반복문에서&amp;nbsp;분기에&amp;nbsp;관련된&amp;nbsp;명령어:&amp;nbsp;분기문&amp;nbsp;&lt;br /&gt;break:&amp;nbsp;반복문을&amp;nbsp;종료한다&lt;br /&gt;continue:&amp;nbsp;반복문의&amp;nbsp;시작&amp;nbsp;지점으로&amp;nbsp;다시&amp;nbsp;돌아간다.&lt;br /&gt;&lt;br /&gt;13.&amp;nbsp;for문의&amp;nbsp;변수와&amp;nbsp;range&amp;nbsp;관계에&amp;nbsp;대한&amp;nbsp;이해:&lt;br /&gt;for문의&amp;nbsp;변수에는&amp;nbsp;range의&amp;nbsp;값이&amp;nbsp;대입된다&lt;br /&gt;&lt;br /&gt;예)&lt;br /&gt;for&amp;nbsp;num&amp;nbsp;in&amp;nbsp;range(0,&amp;nbsp;3):&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(num)&lt;br /&gt;이면&lt;br /&gt;range가&amp;nbsp;내놓는&amp;nbsp;값이&amp;nbsp;num이라는&amp;nbsp;변수에&amp;nbsp;대입된다.&lt;br /&gt;&lt;br /&gt;그리고&amp;nbsp;for문의&amp;nbsp;루프는&amp;nbsp;다음과&amp;nbsp;같이&amp;nbsp;진행됨;&lt;br /&gt;1.range(0,&amp;nbsp;3)이&amp;nbsp;&quot;0부터&amp;nbsp;시작해서&amp;nbsp;3&amp;nbsp;직전까지&quot;&amp;nbsp;값을&amp;nbsp;하나씩&amp;nbsp;준다.&lt;br /&gt;2.첫&amp;nbsp;번째로&amp;nbsp;0을&amp;nbsp;내놓으면,&amp;nbsp;num이라는&amp;nbsp;변수에&amp;nbsp;그&amp;nbsp;값(0)이&amp;nbsp;**할당(대입)**된다.&lt;br /&gt;3.루프&amp;nbsp;몸통(print(num))이&amp;nbsp;실행된다&amp;nbsp;&amp;rarr;&amp;nbsp;0이&amp;nbsp;출력됨.&lt;br /&gt;4.루프가&amp;nbsp;한&amp;nbsp;바퀴&amp;nbsp;끝났으니&amp;nbsp;다시&amp;nbsp;처음으로&amp;nbsp;가서,&amp;nbsp;range가&amp;nbsp;다음&amp;nbsp;값인&amp;nbsp;1을&amp;nbsp;내놓는다.&lt;br /&gt;5.&amp;nbsp;...&lt;br /&gt;&lt;br /&gt;즉,&amp;nbsp;range&amp;nbsp;값이&amp;nbsp;하나&amp;nbsp;나오고&amp;nbsp;그걸로&amp;nbsp;한&amp;nbsp;블록에&amp;nbsp;대한&amp;nbsp;실행이&amp;nbsp;다&amp;nbsp;되었다면,&lt;br /&gt;다음&amp;nbsp;range&amp;nbsp;값으로&amp;nbsp;한&amp;nbsp;블록에&amp;nbsp;대한&amp;nbsp;실행이&amp;nbsp;다시&amp;nbsp;진행됨&amp;nbsp;&lt;br /&gt;&lt;br /&gt;14.for문에&amp;nbsp;따라&amp;nbsp;while문이나&amp;nbsp;match문을&amp;nbsp;계속&amp;nbsp;실행하려면,&amp;nbsp;while문이나&amp;nbsp;match문을&amp;nbsp;for문의&amp;nbsp;하위에&amp;nbsp;둬야한다(=for문&amp;nbsp;아래에&amp;nbsp;들여쓰기&amp;nbsp;해서&amp;nbsp;작성한다)&lt;br /&gt;&lt;br /&gt;statuses&amp;nbsp;=&amp;nbsp;[&quot;success&quot;,&amp;nbsp;&quot;timeout&quot;,&amp;nbsp;&quot;pending&quot;,&amp;nbsp;&quot;unknown&quot;,&amp;nbsp;&quot;failed&quot;]&lt;br /&gt;&lt;br /&gt;for&amp;nbsp;index,&amp;nbsp;status&amp;nbsp;in&amp;nbsp;enumerate(statuses,&amp;nbsp;start=1):&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message&amp;nbsp;=&amp;nbsp;&quot;미분류&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;match&amp;nbsp;status:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&amp;nbsp;&quot;success&quot;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message = &quot;완료&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&amp;nbsp;&quot;failed&quot;|&quot;timeout&quot;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message = &quot;확인필요&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&amp;nbsp;_:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message = &quot;알 수 없는 상태&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f&quot;{index})&amp;nbsp;{status}:&amp;nbsp;{message}&quot;)&lt;br /&gt;&lt;br /&gt;즉 for가 한 번 반복될 때마다,&lt;br /&gt;14-1.message = &quot;미분류&quot;&lt;br /&gt;14-2.현재 status를 가지고 match 검사&lt;br /&gt;14-3.알맞은 case에 따라 message 변경&lt;br /&gt;14-4.print() 실행&lt;br /&gt;이&amp;nbsp;과정&amp;nbsp;전체가&amp;nbsp;반복됩니다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;15.함수&amp;nbsp;정의&lt;br /&gt;def 함수명(매개변수):&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;함수&amp;nbsp;호출&amp;nbsp;시&amp;nbsp;수행할&amp;nbsp;동작&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;함수헤더의&amp;nbsp;()안에&amp;nbsp;들어가는&amp;nbsp;것은&amp;nbsp;매개변수라&amp;nbsp;하고,&amp;nbsp;호출에서&amp;nbsp;()에&amp;nbsp;들어가는&amp;nbsp;&lt;br /&gt;것은&amp;nbsp;인자라&amp;nbsp;한다.(def가&amp;nbsp;포함된&amp;nbsp;첫&amp;nbsp;줄을&amp;nbsp;함수&amp;nbsp;헤더라&amp;nbsp;함)&lt;br /&gt;함수명()&amp;nbsp;은&amp;nbsp;호출한다는&amp;nbsp;의미함&lt;br /&gt;&lt;br /&gt;함수&amp;nbsp;정의문에서&amp;nbsp;매개변수가&amp;nbsp;없으면&amp;nbsp;함수&amp;nbsp;호출할때&amp;nbsp;함수()&amp;nbsp;만&amp;nbsp;해도&amp;nbsp;함수가&amp;nbsp;실행됨&lt;br /&gt;그러나&amp;nbsp;매개변수가&amp;nbsp;있으면&amp;nbsp;인자가&amp;nbsp;필요함&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;17.&amp;nbsp;함수&amp;nbsp;정의문에서&amp;nbsp;매개변수&amp;nbsp;뒤에&amp;nbsp;'='을&amp;nbsp;&amp;nbsp;붙여&amp;nbsp;기본값을&amp;nbsp;설정가능.&lt;br /&gt;&lt;br /&gt;def&amp;nbsp;make_order_line(item:&amp;nbsp;str,&amp;nbsp;quantity:&amp;nbsp;int&amp;nbsp;=&amp;nbsp;1)&amp;nbsp;-&amp;gt;&amp;nbsp;str:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;line&amp;nbsp;=&amp;nbsp;f&quot;{item}&amp;nbsp;{quantity}개&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;line&lt;br /&gt;&lt;br /&gt;정의문&amp;nbsp;헤더에서&amp;nbsp;quantity&amp;nbsp;=&amp;nbsp;1&amp;nbsp;을&amp;nbsp;하여&amp;nbsp;quantity&amp;nbsp;매개변수의&amp;nbsp;기본값을&amp;nbsp;1로&amp;nbsp;설정한거임.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;print(&quot;기본&amp;nbsp;수량:&quot;,&amp;nbsp;make_order_line(&quot;연필&quot;))&lt;br /&gt;하면&amp;nbsp;quantity&amp;nbsp;매개변수&amp;nbsp;인자로&amp;nbsp;기본값인&amp;nbsp;1이&amp;nbsp;들어가는&amp;nbsp;거임.&lt;br /&gt;즉,&amp;nbsp;make_order_line(&quot;연필&quot;,&amp;nbsp;1)&amp;nbsp;을&amp;nbsp;호출한거랑&amp;nbsp;같은거임&lt;br /&gt;&lt;br /&gt;print(&quot;&amp;nbsp;수량&amp;nbsp;지정:&quot;,&amp;nbsp;make_order_line(&quot;공책&quot;,&amp;nbsp;quantity=3))&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;18.&amp;nbsp;return은&amp;nbsp;함수를&amp;nbsp;호출한&amp;nbsp;위치로&amp;nbsp;보내고,&amp;nbsp;print()는&amp;nbsp;화면에&amp;nbsp;보낸다.&lt;br /&gt;&lt;br /&gt;19.&lt;br /&gt;'.py'&amp;nbsp;파일은&lt;br /&gt;파이썬&amp;nbsp;코드를&amp;nbsp;작성하는&amp;nbsp;파일이면서,&amp;nbsp;직접&amp;nbsp;실행할&amp;nbsp;수도&amp;nbsp;있고,&amp;nbsp;다른&amp;nbsp;파일에서&amp;nbsp;import되어&amp;nbsp;모듈로&amp;nbsp;사용될&amp;nbsp;수도&amp;nbsp;있다&lt;br /&gt;&lt;br /&gt;그래서&amp;nbsp;보통&amp;nbsp;모듈&amp;nbsp;파일에서는&amp;nbsp;다음&amp;nbsp;코드를&amp;nbsp;많이&amp;nbsp;씁니다;&lt;br /&gt;if&amp;nbsp;__name__&amp;nbsp;==&amp;nbsp;&quot;__main__&quot;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;이&amp;nbsp;파일을&amp;nbsp;직접&amp;nbsp;실행했을&amp;nbsp;때만&amp;nbsp;실행됩니다.&quot;)&lt;br /&gt;이로써&amp;nbsp;해당&amp;nbsp;파일에서&amp;nbsp;실행시&amp;nbsp;출력이&amp;nbsp;되지만,&amp;nbsp;다른&amp;nbsp;파일에서&amp;nbsp;실행시&amp;nbsp;출력이&amp;nbsp;안된다.&lt;br /&gt;해당&amp;nbsp;파일에서는&amp;nbsp;name이&amp;nbsp;main이지만,&amp;nbsp;다른&amp;nbsp;파일에서는&amp;nbsp;name이&amp;nbsp;main이&amp;nbsp;아니기&amp;nbsp;때문이다.&lt;/p&gt;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/7</guid>
      <comments>https://doomrender.tistory.com/7#entry7comment</comments>
      <pubDate>Wed, 16 Sep 2026 17:43:56 +0900</pubDate>
    </item>
    <item>
      <title>AIO 3기 프리코스 학습 5일차 회고</title>
      <link>https://doomrender.tistory.com/5</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;파이선 Ch6 ch7을 수강하여 마치고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;git 강의 ch6까지 수강하였다.&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;종의 map을 그리는 것처럼함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;# class class변수 (상위클래스변수) 를 하여 상위클래스의 성질을 그대로 가져올 수 있다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&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;1059&quot; data-origin-height=&quot;409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qm9WJ/dJMcairbDyE/acyHKkZd2KMWI4lZMXoqF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qm9WJ/dJMcairbDyE/acyHKkZd2KMWI4lZMXoqF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qm9WJ/dJMcairbDyE/acyHKkZd2KMWI4lZMXoqF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fqm9WJ%2FdJMcairbDyE%2FacyHKkZd2KMWI4lZMXoqF0%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;1059&quot; height=&quot;409&quot; data-origin-width=&quot;1059&quot; data-origin-height=&quot;409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1232&quot; data-origin-height=&quot;439&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bm5XU3/dJMcaafJs4o/W0368OQEfEV5GPTExUTVF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bm5XU3/dJMcaafJs4o/W0368OQEfEV5GPTExUTVF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bm5XU3/dJMcaafJs4o/W0368OQEfEV5GPTExUTVF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbm5XU3%2FdJMcaafJs4o%2FW0368OQEfEV5GPTExUTVF0%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;1232&quot; height=&quot;439&quot; data-origin-width=&quot;1232&quot; data-origin-height=&quot;439&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 class변수 Mage는 상위클래스변수인 Character의 성질을 그대로 갖는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#super()를 이용하여 상위클래스변수의 성질을 복사붙여넣기 할 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 Mage 클래스는 Character 클래스의 __init__(name, health)를 그대로 사용함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엄밀히 말하면 복사 붙여넣기가 아니라, Character 의 __init__(name, health) 부분으로 이동하여 그 함수를 그대로 호출하는거임&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;#여기서 super()사용시 self는 적지 않는다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;super().__init__(name, health) 처럼,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;super().attack()처럼&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;()안에 self를 적지&amp;nbsp; 않는다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왜? 바로 super 자체가 상위클래스의 self에 대해서 지칭하는 함수이기 때문.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉 super는 '상위클래스 걔(=self)의 속성 그대로 호출하겠다'라는 의미이기 때문에&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;()안에 Self를 넣으면 self를 중복하여 사용하는 것이기 때문에 에러가 남.&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;#list(str(range(2,11))) 하면 ['r','a','n','g','e','(','2',',',' ','1','1',')']의 결과가 나옴&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#map은 mapping이라는 뜻을 가진 함수&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, map(함수, iterable) 을 하면 각 iterable을 함수에 각각 넣게됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;map은 지연 계산 형태이기 때문에 list 함수로 감싸줘야 결과값이 출력됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;list(map(str, range(2,11)))=[2,3,4,5,6,7,8,9,10]&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;#modified 파일을 index(=staging area)에 올리는 방법 2가지&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1.git add &amp;lt;파일명&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 파일만 올린다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. git add .&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;붉은색으로 감지된 모든 modified 파일들을 전부 올린다(git status 를 치면 Modified 파일들이 붉은색으로 감지됨)&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;background-color: #eaf2fe; color: #0f1b2d; text-align: start;&quot;&gt;git commit -m &quot;메시지&quot;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6f8fb; color: #0f1b2d; text-align: start;&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;span style=&quot;background-color: #f6f8fb; color: #0f1b2d; text-align: start;&quot;&gt;#Vim 이용해서 커밋 메세지 적고 나서, 메시지를 적는 것을 저장하고 종료하는 방법&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6f8fb; color: #0f1b2d; text-align: start;&quot;&gt;:wq&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #f6f8fb; color: #0f1b2d; text-align: start;&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;&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;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/5</guid>
      <comments>https://doomrender.tistory.com/5#entry5comment</comments>
      <pubDate>Sat, 12 Sep 2026 17:18:57 +0900</pubDate>
    </item>
    <item>
      <title>AIO 3기 프리코스 학습 4일차 회고</title>
      <link>https://doomrender.tistory.com/4</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;ch5 6... 을 하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;강의를 수강하면서 복습을 위한 내용 정리를 한 내용이 있었으면 싶었다.&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;#map: ()안의 함수에 각 요소들을 대입해주는 함수.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 ()안에 함수와 요소 둘 다 있어야함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신, 값을 출력해주지는 않기에, list 함수를 이용해 리스트화 가능.&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;즉, 함수가 lambda로 변수(parameter)가 여러개 있고 요소를 바로 넣어 호출할 경우, Lambda라는 함수 전체를 괄호로 묶어야함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예: lamda a,b : a*b(10,20)&amp;nbsp; --&amp;gt; 틀린 수식: 파이선은 함수 (a*b)(10,20)이 아니라 a*(b(10,20))으로 처리함.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(lamda a,b: a*b)(10,20)--&amp;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;# iteralbe과 lambda 같이 쓰기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;형태: lambda para1, para2, ... : 식 , iterable1, iterable2, ...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ex)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;a=range(1,5)&lt;br /&gt;b=range(10,14)&lt;br /&gt;print(list(map(lambda&amp;nbsp;x,y:&amp;nbsp;x*y,a,b)))&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;#파이선 함수의 결과값은 숫자뿐만이 아니라 bool값일수도 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;lambda x: x%3==0 and x&amp;lt;10 도 함수이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;x에 넣을 요소 값이 위 조건을 만족하면 True라는 값이 나오는 함수인것이다.&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;#iterable한것은 list화 할 수 있다.(List 함수를 적용시킬 수 있다)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;print(map(x))는 리스트로 출력되지 않는다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이를 리스트로 출력하고 싶으면 리스트화해서 출력한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, print(list(map(x)))해서 리스트 출력&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;int() 정수로 변환&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;str() 문자열로 변환&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;float() 실수로 변환&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;tuple(), list(), bool(), set()&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;#함수를 정의해서 쓰려면 return을 반드시 이용. Return 뒤의 값이 표현식이나 다름없다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;def&amp;nbsp;f(x): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&amp;nbsp;*&amp;nbsp;x &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return 3 * x&lt;br /&gt;print(f(5))&amp;nbsp;&amp;nbsp;&amp;nbsp;#&amp;nbsp;15&amp;nbsp;&amp;nbsp;(2*5=10은&amp;nbsp;계산됐지만&amp;nbsp;버려짐,&amp;nbsp;3*5=15만&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;즉,&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;f(5)를 호출 = 심부름꾼을 함수 안으로 &lt;b&gt;보냄&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;함수 안에서 x * 2 계산 = 심부름꾼이 그 안에서 계산을 &lt;b&gt;함&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;return = 심부름꾼이 계산 결과(5*3)를 &lt;b&gt;들고 나옴&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;return이 없으면 = 심부름꾼이 계산은 했지만 &lt;b&gt;빈손으로 나옴&lt;/b&gt;&lt;b&gt;&lt;/b&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;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#return 이후의 코드는 실행되지 않는다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;def&amp;nbsp;g(x): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;3&amp;nbsp;*&amp;nbsp;x &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(&quot;아아아&quot;)&amp;nbsp;&amp;nbsp;&amp;nbsp;# 도달 불가능한 코드&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러므로 return할 표현식이 길면, ()등으로 감싸거나 변수로 정의해서 한줄로 표현하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;def&amp;nbsp;f(x): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;step1&amp;nbsp;=&amp;nbsp;x&amp;nbsp;*&amp;nbsp;2 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;step2&amp;nbsp;=&amp;nbsp;step1&amp;nbsp;+&amp;nbsp;x&amp;nbsp;*&amp;nbsp;3 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result&amp;nbsp;=&amp;nbsp;step2&amp;nbsp;-&amp;nbsp;5 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;result&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;class&amp;nbsp;Car: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def __init__ (self, brand, speed):&amp;nbsp; &amp;nbsp; &amp;nbsp;#brand, speed라는 매개변수를 설정하는 일&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.brand = brand&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; #brand라는 필드를 Car라는 클래스에 생성하는일.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.speed&amp;nbsp;=&amp;nbsp;speed &lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;그리고 객체에 그 특정 필드 저장 공간을 만드는 행위&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;my_car = Car(&quot;포르쉐&quot;, 100)&lt;br /&gt;하지만 brand, speed 모두 함수 내 지역변수로, __init__라는 함수가 종료되면 데이터값이 사라짐.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 my_car라는 인스턴스에 speed필드로 100이 저장됨.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그렇기에 print(my_car.speed) 로 인스턴스의 필드값을 출력 가능.&lt;/p&gt;
&lt;div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-만약 self.brand = brand처럼 필드 설정 코드식을 적지않는다면-&amp;gt;인스턴스에 그 필드 데이터가 저장되지 않음&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예:&lt;/p&gt;
&lt;pre class=&quot;angelscript&quot; style=&quot;color: #eaecf0;&quot;&gt;&lt;code&gt;class Car:
    def __init__(self, brand, speed):
        pass&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;Car(&quot;현대&quot;, 100)을 호출하면, 새 객체(빈 껍데기)가 하나 만들어짐&lt;/li&gt;
&lt;li&gt;그 빈 객체가 self로 전달됨&lt;/li&gt;
&lt;li&gt;&quot;현대&quot;는 brand라는 매개변수에, 100은 speed라는 매개변수에 &lt;b&gt;일단&lt;/b&gt; 들어감&lt;/li&gt;
&lt;li&gt;__init__ 함수 몸통 안에 self.brand = brand 같은 코드가 없으므로, brand와 speed라는 매개변수는 &lt;b&gt;__init__ 함수가 끝나는 즉시 사라짐&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;결과: my_car라는 객체는 텅 빈 채로 남음 (아무 필드도 없음)&lt;/li&gt;
&lt;/ol&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;실행 중에 self.어떤이름 = 값이라는 코드가 실행되는 그 순간에 그 필드가 동적으로 생성됨.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;class&amp;nbsp;Dog: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;__init__(self,&amp;nbsp;name,&amp;nbsp;age): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.name&amp;nbsp;=&amp;nbsp;name &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.age = age&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; #여기선 클래스에 필드 자체를 만드는 행위&lt;br /&gt;&lt;br /&gt;my_dog&amp;nbsp;=&amp;nbsp;Dog(&quot;바둑이&quot;,&amp;nbsp;3) &lt;br /&gt;my_dog.weight = 5&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;#여기선 my_dog라는 인스턴스에만 weight이라는 필드를 추가, 5라는 weight 필드값을 추가&lt;br /&gt;your_dog = Dog(&quot;초코&quot;, 2)&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;&lt;br /&gt;print(my_dog.__dict__)&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # {'name': '바둑이', 'age': 3, 'weight': 5} &lt;br /&gt;print(your_dog.__dict__)&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # {'name': '초코', 'age': 2}&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;larr; weight 없음!&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;# f-string (formatted string literal)-형태가 부여된 문자열&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;즉, 값을 넣으면 형태가 정해지는 문자열.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문자열 앞에 f를 붙이면, 문자열 안의 {} 안에 변수나 표현식을 넣어서 &lt;b&gt;그 값을 문자열 안에 바로 끼워 넣을 수 있게&lt;/b&gt; 해줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ex:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;class&amp;nbsp;Person: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;__init__(self,&amp;nbsp;name): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.name&amp;nbsp;=&amp;nbsp;name &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.hello = &lt;b&gt;f&quot;안녕하세요, 저는 {self.name}입니다.&quot;&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;f가 없으면 {name}은 그냥 글자 그대로 {name}이라는 텍스트로 출력됩니다:&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;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;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;#syntax: 문법&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;syn 같이&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;tax 배열하다&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;#iteralbe&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;iter&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;#instance&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;in -안의, -위의&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;sta 서다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ce 명사형&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(눈) 앞에 서있는것 -&amp;gt; 사례, 예시&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt;파이선의 뜻과 연결: 구체적 사례로 추상적인 개념인 class와 대비되는 개념&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;#field&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영역--속성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파이선에서는 속성 뜻을 가짐.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;class&amp;nbsp;Dog: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;__init__(self,&amp;nbsp;name,&amp;nbsp;age): &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.name&amp;nbsp;=&amp;nbsp;name &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.age = age&lt;br /&gt;my_dog&amp;nbsp;=&amp;nbsp;Dog(&quot;바둑이&quot;,&amp;nbsp;3)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;에서 Dog 라는 클래스는 name과 age라는 필드를 갖고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;my_dog라는 인스턴스의 name 필드값은 '바둑이'이다.&lt;/p&gt;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/4</guid>
      <comments>https://doomrender.tistory.com/4#entry4comment</comments>
      <pubDate>Thu, 10 Sep 2026 23:36:55 +0900</pubDate>
    </item>
    <item>
      <title>AIO 3기 프리코스 학습 3일차 회고</title>
      <link>https://doomrender.tistory.com/3</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;ch4를 수강하였다. 이번에는 강의도 많고 길이도 길었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그러나 스트레스 받는 것은 따로 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4-5 세트 강의를 듣는데, 전에 못봤던 dict, 키, 값 등의 개념이 나온 것이다. 나는 처음에 강사님이 빠르게 언급만 하고 넘어간 부분인가 하고 클로드에 직접 물어보면서 학습을 이어갔다. 그런데 하다보니 이 개념이 방대한 개념이라는 것을 깨닫고 뭔가 잘못되었음을 깨달았다. 알고 보니 강의 순서상 4-6강의가 4-5보다 선행된 강의였던 것이다. dict, 키, 값 등이 4-6에 설명이 되어있었다.&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;이번 강의를 들으면서 저항을 받았던 것은 dict() 함수였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;dict([[1, &quot;value&quot;], [2, &quot;value2&quot;]]) 처럼 한번 크게 []로 묶거나 ()로 묶어서 인자를 한개로 처리해야하고, print 결과값을 나오게 하면 그 결과가 {1: 'value', 2: 'value2'}로 나오는 것이었다. 클로드에 물어보니 함수이기 때문에 input은 한번에 하나만 들어가야 하니 리스트나 튜플 형태로 하나로 묶어야하고, dict이라는 함수의 정의 자체가 안의 원소들을 한번씩 체크한다는 것이다. 그리고 체크한 원소들이 2개의 쌍으로 묶여있을시 이 2개의 쌍을 각 '키:값'으로 본다는 것이다..&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 뭔가 이유를 알아야지만 저항을 안 받는데, 왜 dict의 ()안에 하나로 묶는지 이유가 없어서 저항을 받았다. 그리고 갑자기 내가 모르는 결과값이 튀어나오는 도약에 저항을 받았다.&lt;/p&gt;</description>
      <author>doomrender</author>
      <guid isPermaLink="true">https://doomrender.tistory.com/3</guid>
      <comments>https://doomrender.tistory.com/3#entry3comment</comments>
      <pubDate>Tue, 8 Sep 2026 23:23:05 +0900</pubDate>
    </item>
  </channel>
</rss>