¿ø Àç·áµé

¿ì¸®´Â ¹«¾ùÀ» ´Ù·ê °ÍÀΰ¡?
  • µ¥ÀÌŸ¶õ ¹«¾ùÀΰ¡
  • º¯¼ö¶õ ¹«¾ùÀΰ¡
  • µ¥ÀÌŸ Çü°ú ±×°ÍÀ¸·Î ¹«¾ùÀ» ÇÒ ¼ö Àִ°¡
  • ¿ì¸® ÀڽŸ¸ÀÇ µ¥ÀÌŸÇüÀ» Á¤ÀÇÇϱâ
  • ¼Ò °³

    ¾î¶°ÇÑ Á¾·ùÀÇ Ã¢Á¶ÀûÀÎ È°µ¿¿¡¼­µµ ¿ì¸®´Â ¼¼ °¡ÁöÀÇ ±âº»ÀûÀÎ ¿ä¼Ò¸¦ ÇÊ¿ä·Î ÇÑ´Ù: µµ±¸¿Í, Àç·á ±×¸®°í ±â¼ú. ¿¹¸¦ µé¾î ³»°¡ ±×¸²À» ±×¸± ¶§´Â µµ±¸µéÀº º×, ¿¬ÇÊ ±×¸®°í ÆÈ·¹Æ®ÀÌ´Ù. ±â¼úÀº µ¡Ä¥ÇÏ°í, È¥ÇÕÇÏ°í, Èð»Ñ¸®°í µîµî °ú °°Àº °ÍÀÌ´Ù. ¸¶Áö¸·À¸·Î Àç·á´Â ÆäÀÎÆ®, Á¾ÀÌ ±×¸®°í ¹°ÀÌ´Ù. ºñ½ÁÇÏ°Ô ³»°¡ ÇÁ·Î±×·¡¹ÖÀ» ÇÒ ¶§´Â, ³ªÀÇ µµ±¸´Â ÇÁ·Î±×·¡¹Ö ¾ð¾î, ¿î¿µÃ¼Á¦¿Í Çϵå¿þ¾îÀÌ´Ù. ±â¼úÀº ÀÌ Àü ¼½¼Çµé¿¡¼­ ¿ì¸®°¡ ³íÀÇÇÑ ÇÁ·Î±×·¡¹Ö ±¸Á¶µéÀÌ´Ù ±×¸®°í Àç·á´Â ³»°¡ ó¸®ÇؾßÇÒ µ¥ÀÌŸÀÌ´Ù. ÀÌ Àå¿¡¼­ ¿ì¸®´Â ÇÁ·Î±×·¡¹ÖÀÇ Àç·áµéÀ» »ìÆ캼 °ÍÀÌ´Ù.

    ÀÌ ÀåÀº ´ë´ÜÈ÷ ±ä ¼½¼ÇÀÌ¸ç ±× º»¼º»ó ¿©·¯ºÐÀº ¾à°£Àº ¹«¹Ì°ÇÁ¶ÇÏ°Ô ´À³¥ °ÍÀε¥, ±×·¡µµ ÁÁÀº ¼Ò½ÄÀº ¿©·¯ºÐÀÌ ÇѹøÀÌ¶óµµ ±× ¸ðµÎ¸¦ ÀÐÀ» ÇÊ¿ä´Â ¾ø´Ù´Â °ÍÀÌ´Ù. ÀÌ ÀåÀº ¸ÕÀú »ç¿ë°¡´ÉÇÑ °¡Àå ±âº»ÀûÀÎ µ¥ÀÌŸ ÇüÀ» »ìÆ캸°í °è¼ÓÇÏ¿© ¾î¶»°Ô ¿ì¸®´Â Ç׸ñµéÀÇ ¸ðÀÓÀ» ´Ù·ê °ÍÀÎÁö¿¡ ´ëÇÏ¿© ³ª¾Æ°¡°í ¸¶Áö¸·À¸·Î ¾à°£ ´õ Áøº¸µÈ Àç·áµéÀ» »ìÆ캼 °ÍÀÌ´Ù. ÁýÇÕÇü Àç·áµéÀ» ´Ù·é, ÀÌ ÀåÀ» »ý·«ÇÒ ¼ö°¡ ÀÖ´Ù. ´ÙÀ½ ¸î °³ÀÇ ÀåÀ» ´Ù·ç¾î º¸°í ±×¸®°í ³ª¼­ ÀÌ ÀåÀ¸·Î µ¹¾Æ ¿À¶ó. ±× ¶§ ¿ì¸®´Â ´õ¿í Áøº¸µÈ Á¶°¢µéÀ» »ç¿ëÇϱ⠽ÃÀÛÇÒ °ÍÀÌ´Ù.

    µ¥ÀÌŸ

    µ¥ÀÌŸ´Â ¸ðµç »ç¶÷µéÀÌ »ç¿ëÀ» ÇÏÁö¸¸ ½ÇÁ¦·Î ÀÌÇØÇÏ´Â »ç¶÷Àº µå¹® ¿ë¾îµé ÁßÀÇ ÇϳªÀÌ´Ù. ³» »çÀüÀº ±×°ÍÀ» ´ÙÀ½°ú °°ÀÌ Á¤ÀÇÇÏ°í ÀÖ´Ù:

    "°á°ú¸¦ À̲ø¾î ³¾¼ö ÀÖ´Â »ç½Çµé ȤÀº ¼ýÀÚµé; Á¤º¸"

    ±×°ÍÀ¸·Î Å« µµ¿òÀº ¾ÈµÇ°ÚÁö¸¸ Àû¾îµµ Ãâ¹ßÁ¡Àº Á¦°øÇØ ÁØ´Ù. ÇÁ·Î±×·¡¹Ö ¿ë¾î·Î µ¥ÀÌŸ°¡ ¾î¶»°Ô »ç¿ëµÇ´Â Áö¸¦ »ìÆ캽À¸·Î½á ¿ì¸®°¡ »ç½ÇÀ» ¸íÄèÇÏ°Ô Á¤¸®ÇÒ ¼ö ÀÖ´ÂÁö »ìÆ캸ÀÚ. µ¥ÀÌŸ´Â °¡°øµÇÁö ¾ÊÀº Á¤º¸ÀÌ´Ù, ±×°ÍÀ» ¿©·¯ºÐÀÇ ÇÁ·Î±×·¥ÀÌ Ã³¸®ÇÑ´Ù. µ¥ÀÌŸ°¡ ¾øÀÌ´Â ÇÁ·Î±×·¥Àº ¾î¶°ÇÑ À¯¿ëÇÑ ±â´Éµµ ¼öÇàÇÒ ¼ö ¾ø´Ù. ÇÁ·Î±×·¥Àº ¶§·Î´Â µ¥ÀÌŸÀÇ Çütype¿¡ µû¶ó¼­, ¿©·¯°¡Áö ¹æ½ÄÀ¸·Î µ¥ÀÌŸ¸¦ ó¸®ÇÑ´Ù. °¢ µ¥ÀÌŸÀÇ ÇüÀº ¶ÇÇÑ ¸¹Àº ¼öÀÇ Ã³¸®¹æ¹ýoperationsµéÀ» °¡Áø´Ù - ±×°ÍÀ¸·Î ¿©·¯ºÐ µ¥ÀÌŸ¿¡ 󸮸¦ ÇÑ´Ù. ¿¹¸¦ µé¾î ¿ì¸®´Â ¼ýÀÚµéÀ» ´õÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» º¸¾Ò´Ù. µ¡¼ÀÀº ¼öÄ¡ÇüÀÇ µ¥ÀÌŸ¿¡ »ç¿ëµÇ´Â 󸮹æ¹ýÀÌ´Ù. µ¥ÀÌŸ´Â ¿©·¯°¡Áö ÇüÅ°¡ ÀÖ´Ù. ¿ì¸®´Â °¡Àå ÀϹÝÀûÀÎ Çüŵé°ú ±× ÇüÅ¿¡ »ç¿ë°¡´ÉÇÑ Ã³¸®¹æ¹ýÀ» »ìÆ캼 °ÍÀÌ´Ù:

    º¯ ¼ö

    µ¥ÀÌŸ´Â ¿©·¯ºÐÀÇ ÄÄÇ»Å͸޸𸮿¡ ÀúÀåµÈ´Ù. ¿©·¯ºÐÀº ÀÌ°ÍÀ» ÆíÁö¸¦ ºÐ·ùÇϱâ À§ÇÏ¿© ¿ìÆí¹æ¿¡¼­ »ç¿ëµÇ´Â »óÀÚµé·Î °¡µæÇÑ Å« º®À̶ó°í ºñÀ¯ÇÒ ¼ö ÀÖ´Ù. ¿©·¯ºÐÀº ÆíÁö¸¦ ¾î¶² »óÀÚ¿¡¼­ ³ÖÀ» ¼ö ÀÖÁö¸¸, »óÀÚ¿¡ Àû´çÇÑ ¸ñÀûÁö ÁÖ¼Ò°¡ ºÙ¾îÀÖÁö ¾Ê´Ù¸é ±×°ÍÀº ¾Æ¹«·± Àǹ̾ø´Â ÀÏÀÌ´Ù. º¯¼öµéÀº ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ ¸Þ¸ð¸®¿¡ ÀÖ´Â »óÀڵ鿡 ºÙ¿©Áø ¶óº§°ú °°Àº °ÍÀÌ´Ù.

    µ¥ÀÌŸÀÇ ¸ð½ÀÀÌ ¾î¶°ÇÑÁö¸¦ ÀÌÇØÇÏ´Â °ÍÀº ÀÌÇØÇÒ ¼ö·Ï ÁÁÀº °ÍÀÌÁö¸¸ ±×°ÍÀ» ´Ù·ç±â À§Çؼ­´Â °Å±â¿¡ Á¢±ÙÇÒ ÇÊ¿ä°¡ ÀÖÀ¸¸ç ±×°ÍÀÌ ¹Ù·Î º¯¼ö°¡ »ç¿ëµÇ´Â ÀÌÀ¯ÀÌ´Ù. ÇÁ·Î±×·¡¹Ö ¿ë¾î·Î ¿ì¸®´Â µ¥ÀÌŸ ÇüÀÇ ½Çüinstances¸¦ ¸¸µé¼ö ÀÖ°í ±×°ÍµéÀ» º¯¼ö¿¡ ÇÒ´çÇÒ ¼ö ÀÖ´Ù. º¯¼ö´Â ÄÄÇ»ÅÍ ¸Þ¸ð¸®ÀÇ ¾îµð¿£°¡ Àִ ƯÁ¤ÇÑ Áö¿ª¿¡ ´ëÇÑ ÂüÁ¶referenceÀÌ´Ù. ÀÌ·¯ÇÑ Áö¿ªÀº µ¥ÀÌŸ¸¦ °¡Áö°í ÀÖ´Ù. ¾î¶² ÄÄÇ»ÅÍ ¾ð¾î¿¡¼­´Â º¯¼ö´Â ÀÚ½ÅÀÌ Áö½ÃÇÏ´Â ±× µ¥ÀÌŸÀÇ Çü°ú ¹Ýµå½Ã ÀÏÄ¡Çؾ߸¸ ÇÑ´Ù. ±×·¯ÇÑ º¯¼ö¿¡ À߸øµÈ ÇüÅÂÀÇ µ¥ÀÌŸ¸¦ ÇÒ´çÇÏ·Á´Â ¾î¶°ÇÑ ½Ãµµµµ ¿¡·¯¸¦ ¾ß±âÇÒ °ÍÀÌ´Ù. ¾î¶² ÇÁ·Î±×·¡¸ÓµéÀº ÀÌ·¯ÇÑ ÇüÅÂÀÇ ½Ã½ºÅÛÀ» ¼±È£ÇÑ´Ù, ÀÌ·¯ÇÑ ½Ã½ºÅÛÀº ŽÁöÇϱ⠾î·Á¿î ¹Ì¹¦ÇÑ ¹ö±×µéÀ» ¹æÁöÇÒ ¼ö Àֱ⠶§¹®¿¡ Á¤ÀûÇüÅÂstatic typing¶ó°í ¾Ë·ÁÁ® ÀÖ´Ù.

    ÆÄÀ̽㿡¼­ º¯¼ö´Â Àڽſ¡°Ô ÇÒ´çµÈ µ¥ÀÌŸÀÇ ÇüÀ» ÃëÇÑ´Ù. ÆÄÀ̽ãÀº ±× ÇüŸ¦ À¯ÁöÇÒ °ÍÀÌ°í ¿©·¯ºÐÀÌ (¹®ÀÚ¿­À» ¼ýÀڵ ´õÇÏ·Á°í ÇÏ´Â °Í°ú °°Àº) ±«ÀÌÇÑ ¹æ½ÄÀ¸·Î µ¥ÀÌŸ¸¦ ¼¯¾î ¾²·Á°í ÇÏ¸é ¿©·¯ºÐ¿¡°Ô °æ°í¸¦ ÇÒ °ÍÀÌ´Ù. (¿¹Á¦ÀÇ ¿¡·¯ ¸Þ½ÃÁö°¡ ±â¾ï³ª´Â°¡? ±×°ÍÀº ´ÜÁö ±×·± Á¾·ùÀÇ ¿¹ÀÏ»ÓÀÌ´Ù.) ¿ì¸®´Â ÇÑ º¯¼ö°¡ Áö½ÃÇÏ´Â µ¥ÀÌŸÀÇ ÇüÀ» ±× º¯¼ö¸¦ ÀçÇÒ´çÇÔÀ¸·Î½á ¹Ù²Ü¼ö ÀÖ´Ù.

    >>> q = 7         # q is now a number
    >>> print q
    7
    >>> q = "Seven"   # reassign q to a string
    >>> print q
    Seven
    

    'q'´Â ¼ýÀÚ 7À» Áö½ÃÇϵµ·Ï óÀ½¿¡ ¼³Á¤µÇ¾úÀ½À» ÁÖ¸ñÇ϶ó. ¿ì¸®°¡ ¹®ÀÚ¿­ "seven"À» ±×°÷¿¡ ÇÒ´çÇÒ ¶§±îÁö 'q'´Â ±× °ªÀ» À¯ÁöÇÑ´Ù. ±×·±½ÄÀ¸·Î, ÆÄÀ̽ãÀÇ º¯¼ö´Â ¾î¶²°ªÀ» Áö½ÃÇϵçÁö ±× ÇüÀ» À¯ÁöÇÏÁö¸¸, ¿ì¸®´Â ±× º¯¼ö¸¦ ´Ü¼øÈ÷ ÀçÇÒ´çÇÔÀ¸·Î½á ±×°ÍµéÀÌ Áö½ÃÇÏ´Â °ÍÀ» º¯°æÇÒ ¼ö ÀÖ´Ù. ±× ¼ø°£¿¡ ¿ø·¡ÀÇ µ¥ÀÌŸ´Â '»ç¶óÁö°í' ÆÄÀ̽ãÀº (´Ù¸¥ º¯¼ö°¡ ¶Ç ±×°ÍÀ» Áö½ÃÇÏÁö ¾Ê´Â ÇÑ)±×°ÍÀ» ¸Þ¸ð¸®·ÎºÎÅÍ Áö¿ï °ÍÀÌ´Ù. ÀÌ°ÍÀº ¾²·¹±â ¼öÁý garbage collection.À̶ó°í ¾Ë·ÁÁ® ÀÖ´Ù.

    ¾²·¹±â ¼öÁýÀº °¡²û Àá½Ã Çѹø µé·Á¼­ ¶óº§¾ø´Â »óÀÚ¿¡ µé¾î ÀÖ´Â ÆíÁöµéÀ» ¾ø¾Ö´Â ÆíÁö¹æ Á÷¿ø¿¡ ºñÀ¯µÉ ¼ö ÀÖ´Ù. ±×°¡ ¸¸¾à ¼ÒÀ¯ÀÚ È¤Àº ÁÖ¼Ò¸¦ ±× ÆíÁö¿¡¼­ ¹ß°ßÇÒ ¼ö ¾ø´Ù¸é ±×´Â ±×°ÍµéÀ» ¾²·¹±âÅë¿¡ ¹ö¸°´Ù. µ¥ÀÌŸÇüÀÇ ¸î °¡Áö ¿¹Á¦µéÀ» »ìÆ캸°í ÀÌ·¯ÇÑ ¸ðµç °ÍµéÀÌ ¾î¶»°Ô ¸Â¾Æ ¶³¾îÁö´ÂÁö ¾Ë¾Æº¸ÀÚ

    ±âº»ÀûÀÎ µ¥ÀÌŸ Çü

    ±âº»ÀûÀÎ µ¥ÀÌŸ ÇüÀº À̸¥¹Ù ±×µéÀÌ ¿ì¸®°¡ ´Ù·ê ¼ö ÀÖ´Â °¡Àå ±âº»ÀûÀÎ µ¥ÀÌŸ ÇüÀ̱⠶§¹®¿¡ ±×·¸°Ô ºÒ·ÁÁø´Ù. ´õ¿í º¹ÀâÇÑ µ¥ÀÌŸ ÇüÀº ½ÇÁ¦·Î´Â ±âº»ÀûÀÎ ÇüÀÇ °áÇÕÀÌ´Ù. À̰͵éÀº, ºôµù ºí·Ï°ú °°¾Æ¼­ ´Ù¸¥ ¸ðµç ÇüµéÀÌ ÀÌ À§¿¡ ¼¼¿öÁö¸ç, ÄÄÇ»ÆÃÀÇ Åä´ë°¡ µÈ´Ù. ÀÌ°Í¿¡´Â ¹®ÀÚ, ¼ýÀÚ ±×¸®°í ºÒ¸®¾ð ÇüÀ̶ó°í ºÒ¸®¿ì´Â °Í µîÀÌ Æ÷ÇԵȴÙ.

    ¹®ÀÚ¿­

    ¿ì¸®´Â ÀÌ¹Ì À̰͵éÀ» º¸¾Ò´Ù. ±×°ÍµéÀº ¸» ±×´ë·Î Á× ´Ã¾î¼± ȤÀº ¿¬¼ÓÀûÀÎ ¹®ÀÚµéÀ̾ ¿©·¯ºÐÀÇ ½ºÅ©¸°¿¡ Ãâ·ÂµÉ ¼ö ÀÖ´Ù. (»ç½Ç °Å±â¿¡´Â Ãâ·ÂµÉ ¼ö ¾ø´Â Á¦¾î ¹®ÀÚ control charactersµéµµ ¿ª½Ã ÀÖÀ» ¼ö ÀÖ´Ù.)

    ÆÄÀ̽㿡¼­, ¹®ÀÚ¿­Àº ¿©·¯°¡Áö ¹æ½ÄÀ¸·Î Ç¥ÇöµÉ ¼ö ÀÖ´Ù:

    ´ÜÀÏ ÀοëºÎÈ£¸¦ °¡Áö°í:

    'Here is a string'

    ÀÌÁß ÀοëºÎÈ£¸¦ °¡Áö°í:

    "Here is a very similar string"

    ¼¼°³Â¥¸® ÀÌÁßÀοëºÎÈ£¸¦ °¡Áö°í:

    """ Here is a very long string that can
        if we wish span several lines and Python will
        preserve the lines as we type them..."""
    

    ¸¶Áö¸·ÀÇ Æ¯º°ÇÑ »ç¿ë¹ýÀº ÆÄÀ̽㠿츮°¡ ½º½º·Î ¸¸µç ÇÔ¼öµéÀ» ¹®¼­È­ÇÏ´Â °ÍÀÌ´Ù. - ÀÌ°ÍÀº ³ªÁß¿¡ ´Ù·ê °ÍÀÌ´Ù.

    ¿©·¯ºÐÀº ¹®ÀÚ¿­¼Ó¿¡ ÀÖ´Â °³º°ÀûÀÎ ¹®ÀÚµéÀ» ¹®ÀÚ¿­ÀÇ ¹è¿­·Î Ãë±ÞÇÔÀ¸·Î½á Á¢±ÙÇÒ ¼ö ÀÖ´Ù.(¾Æ·¡ÀÇ ¹è¿­À» ÂüÁ¶Ç϶ó) ¶ÇÇÑ ±× ÇÁ·Î±×·¡¹Ö¾ð¾î°¡ º¸Åë Á¦°øÇÏ´Â ¾à°£ÀÇ Ã³¸®¹æ¹ýµéµµ À־ ¿©·¯ºÐÀÌ ¹®ÀÚ¿­À» ´Ù·ê¼ö ÀÖµµ·Ï µµ¿Í ÁØ´Ù. - ÇϺΠ¹®ÀÚ¿­ ã±â, µÎ°³ÀÇ ¹®ÀÚ¿­À» ¿¬°áÇϱâ, ÇϳªÀÇ ¹®ÀÚ¿­À» ´Ù¸¥ ¹®ÀÚ¿­¿¡ º¹»çÇϱ⠵îµî.

    ¹®ÀÚ¿­ ¿¬»êÀÚ

    ¹®ÀÚ¿­¿¡ ¼öÇà°¡´ÉÇÑ ¼ö ¸¹Àº 󸮹æ½ÄµéÀÌ ÀÖ´Ù. ÀÌ·¯ÇÑ °Íµé Áß ¾à°£Àº ÆÄÀ̽㿡 ³»ÀåµÇ¾úÀ¸³ª ´Ù¸¥ ¸¹Àº °ÍµéÀº ¸ðµâ·Î Á¦°øµÇ¾î ¿©·¯ºÐÀº ¹Ýµå½Ã (°£´ÜÇÑ ¿¬¼Ó¿­ ¼½¼Ç¿¡¼­ sys¸ðµâÀ» ´Ù·é °Í°ú °°ÀÌ)±× ¸ðµÑÀ» ¼öÀÔÇÒ ÇÊ¿ä°¡ ÀÖ´Ù.

    ¹®ÀÚ¿­ ¿¬»êÀÚ

    ¿¬»êÀÚ ¼³ ¸í
    S1 + S2 S1°ú S2¸¦ ¿¬°áÇϱâ
    S1 * N S1À» N¹ø ¹Ýº¹Çϱâ

    ¿ì¸®´Â À̰͵éÀÌ ´ÙÀ½ ¿¹Á¦¿¡¼­¿Í °°ÀÌ ÀÛµ¿ÇÏ´Â °ÍÀ» º¼¼ö ÀÖ´Ù:

    >>> print 'Again and ' + 'again'    # string concatenation
    Again and again
    >>> print 'Repeat ' * 3		        # string repetition
    Repeat Repeat Repeat
    >>> print 'Again ' + ('and again ' * 3)  # combine '+' and '*'
    Again and again and again and again
    

    ¿ì¸®´Â ¶ÇÇÑ ¹®ÀÚ¿­À» º¯¼ö¿¡ ÇÒ´çÇÒ ¼öµµ ÀÖ´Ù:

    >>> s1 = 'Again '
    >>> s2 = 'and again '
    >>> print s1 + (s2 * 3)
    Again and again and again and again
    

    °¡Àå ¸¶Áö¸·ÀÇ µÎ °³ÀÇ ¿¹Á¦´Â ¶È °°Àº Ãâ·ÂÀ» »êÃâÇÏ°í ÀÖÀ½À» ÁÖ¸ñÇ϶ó.

    BASICÀÇ ¹®ÀÚ¿­ º¯¼ö

    º£ÀÌÁ÷¿¡¼­, ¸¸¾à º¯¼ö°¡ ¹®ÀÚ¿­ ¹è¿­À̶ó¸é ¿©·¯ºÐÀº ¹Ýµå½Ã ±× À̸§À» $·Î ³¡³»¾ß ÇÑ´Ù. ±×·¸°Ô ÇÏ°í ³ª¸é ´Ù½Ã´Â ±× º¯¼ö¿¡ ¼ýÀÚ¸¦ ÇÒ´çÇÒ ¼ö ¾ø´Ù. ¸¶Âù°¡Áö·Î, (%·Î ³¡³ª´Â) Á¤¼öÇü º¯¼ö¶ó¸é ¿©·¯ºÐÀº ¹®ÀÚ¿­À» ±×°Í¿¡ ÇÒ´çÇÒ ¼ö ¾ø´Ù. º£ÀÌÁ÷Àº ¾î¶² °ÍÀ¸·Îµµ ³¡³ªÁö ¾Ê´Â 'ÀÍ¸í º¯¼ö'¸¦ Çã¿ëÇϱâ´Â ÇÑ´Ù. ±×·¸Áö¸¸ À̰͵éÀº ½Ç¼öÀ̰ųª ȤÀº Á¤¼öÀ̰ųª ¿À·ÎÁö ¼ýÀÚ¸¸À» ÀúÀåÇÒ ¼ö ÀÖ´Ù. ¿©±â¿¡ º£ÀÌÁ÷¿¡¼­ »ç¿ëÇÏ´Â ¹®ÀÚ¿­ º¯¼öÀÇ ¿¹Á¦°¡ ÀÖ´Ù:

    DIM MyString$
    MyString$ = "Hello there!"
    PRINT MyString$
    

    Tcl ¹®ÀÚ¿­

    TclÀº ³»ºÎÀûÀ¸·Î ¸ðµç °Í¿¡ ¹®ÀÚ¿­À» »ç¿ëÇÑ´Ù. »ç¿ëÀÚÀÇ °üÁ¡¿¡¼­ º»´Ù¸é ±×·¸Áö¸¸ ÀÌ°ÍÀº º¸ÅëÀº È®½ÇÇÏ°Ô º¸ÀÌÁö ¾Ê´Â´Ù. ¸í½ÃÀûÀ¸·Î ¹®ÀÚ¿­À» ´Ù·ê ¶§´Â ¿©·¯ºÐÀº ±×°ÍÀ» ÀÌÁßÀοëºÎÈ£·Î µÑ·¯½Î¾ß ÇÑ´Ù. Tcl¿¡¼­ ÇϳªÀÇ °ªÀ» º¯¼ö¿¡ ÇÒ´çÇϱâ À§Çؼ­´Â set¸í·É¾î¸¦ »ç¿ëÇ϶ó ±×¸®°í ¹®ÀÚ¿­ º¯¼ö¸¦ Àбâ À§Çؼ­´Â (ȤÀº ½ÇÁ¦·Î Tcl¿¡¼­´Â ¾î¶² º¯¼öµµ ¸¶Âù°¡ÁöÀÌ´Ù.) '$'±âÈ£¸¦ ±× À̸§¾Õ¿¡ ³õ¾Æ¶ó, ´ÙÀ½°ú °°ÀÌ:

    % set Mystring "Hello world"
    % put $Mystring
    

    ÁÖÀÇ: Tcl °ú BASIC¿¡¼­´Â ¿À·ÎÁö ÀÌÁßÀοëºÎÈ£¸¸ÀÌ ¹®ÀÚ¿­¿¡ »ç¿ëµÉ ¼ö ÀÖ´Ù.

    Á¤ ¼ö

    Á¤¼ö´Â ´ë´ÜÈ÷ Å« À½ÀÇ °ªÀ¸·ÎºÎÅÍ ´ë´ÜÈ÷ Å« ¾çÀÇ °ª±îÁö ¼Ò¼öÁ¡À» Æ÷ÇÔÇÏÁö ¾ÊÀº ¼öÀÌ´Ù. ±×°ÍÀº ²À ±â¾ïÇؾßÇÒ Áß¿äÇÑ Á¡ÀÌ´Ù. º¸Åë ¿ì¸®´Â ¼ýÀÚµéÀÌ Å©±â¿¡ ÀÖ¾î Á¦ÇÑ µÇÁö ¾Ê´Â´Ù°í »ý°¢ÇÏÁö¸¸ ÄÄÇ»ÅÍ¿¡¼­´Â »óÇÑ°ú ÇÏÇÑÀÌ Á¸ÀçÇÑ´Ù. »óÇÑ°ªÀÇ Å©±â´Â MAXINT¶ó°í ¾Ë·ÁÁ® ÀÖÀ¸¸ç, ¼ýÀÚ¸¦ Ç¥ÇöÇϱâ À§ÇÏ¿© ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ°¡ »ç¿ëÇÏ´Â ºñÆ®ÀÇ ¼ýÀÚ¿¡ ÀÇÇÏ¿© °áÁ¤µÈ´Ù. ¿À´Ã³¯ÀÇ ´ëºÎºÐÀÇ ÄÄÇ»ÅÍ¿¡¼­´Â 32ºñÆ®°¡ ±âº»ÀÌ¸ç ±×·¡¼­ MAXINT°ªÀº ¾à 20¾ï Á¤µµ°¡ µÈ´Ù.

    ¾ç°ú À½ÀÇ °ªÀ» °¡Áö´Â ¼ýÀÚ´Â ºÎÈ£ÀÖ´Â Á¤¼ösigned integers¶ó°í ¾Ë·ÁÁ® ÀÖ´Ù. ¿©·¯ºÐÀº ¹°·Ð 0 À» Æ÷ÇÔÇÏ¿©, ¾çÀÇ ¼ýÀڷθ¸ Á¦ÇÑµÈ ºÎÈ£¾ø´Â Á¤¼öunsigned integers¸¦ °¡Áú ¼öµµ ÀÖ´Ù. ÀÌ°ÍÀº ´õ Å« ÃÖ´ë°ªÀ» MAXINTÀÇ µÎ¹è ȤÀº 40¾ï °¡·®À¸·Î »ç¿ë°¡´ÉÇÏ´Ù´Â °ÍÀ» ÀǹÌÇϴµ¥ ¿ì¸®°¡ À½ÀÇ ¼ö¸¦ ³ªÅ¸³»±â À§ÇÏ¿© ±× Àü¿¡ »ç¿ëÇß´ø °ø°£µéÀ» »ç¿ëÇÏ¿© ¾çÀÇ ¼ýÀÚµéÀ» ´õ¿í ¸¹ÀÌ ³ªÅ¸³¾ ¼ö Àֱ⠶§¹®ÀÌ´Ù.

    Á¤¼ö´Â Å©±â°¡ MAXINT°ªÀ¸·Î Á¦ÇÑ µÇ¾î ÀÖÀ¸¹Ç·Î µÎ °³ÀÇ Á¤¼ö¸¦ ´õÇÏ¿© ÇÔ°è°¡ MAXINT°ªº¸´Ù Å©°Ô µÈ´Ù¸é ÇÕ°è´Â ¿¡·¯¸¦ ¹ß»ý½ÃŲ´Ù. ¾î¶² ½Ã½ºÅÛ/¾ð¾î¿¡¼­´Â À߸øµÈ °ªÀº ´Ü¼øÈ÷ ±×´ë·Î ¹ÝȯµÉ »ÓÀÌ´Ù( º¸Åë ¾î¶² ºñ¹Ð½º·± Ç¥½ÄÀÌ Á¦±âµÇ¸é ¿©·¯ºÐÀÌ »ý°¢Çϱ⿡ ±×°ÍÀÌ ¿Ã¹Ù¸£°Ô ¼³Á¤ µÇ¾ú´ÂÁö¸¦ ¿©·¯ºÐÀº Á¡°ËÇÒ¼ö ÀÖ´Ù.) º¸Åë ¿¡·¯ Á¶°ÇÀÌ ¾ß±âµÇ¸é ¿©·¯ºÐÀÇ ÇÁ·Î±×·¥Àº ±× ¿¡·¯¸¦ ó¸®ÇÒ ¼ö Àְųª ¾Æ´Ï¸é ÇÁ·Î±×·¥Àº Á¾Ç¥ÇÑ´Ù. ÆÄÀ̽ãÀº ÈÄÀÚÀÇ Á¢±Ù¹æ½ÄÀ» ÃëÇÏ°í ÀÖ°í ¹Ý¸é¿¡ TclÀº ÀüÀÚ¸¦ äÅÃÇÏ°í ÀÖ´Ù. º£ÀÌÁ÷µµ ¿¡·¯¸¦ ¾ß±âÇÏÁö¸¸ ¿¡·¯¸¦ ÀâÀ» ¼ö ÀÖ´Â ¹æ¹ýÀº Á¦°øÇÏÁö ¾Ê´Â´Ù.( Àû¾îµµ ³­ ¾î¶»°Ô ÇÏ´ÂÁö ¸ð¸¥´Ù!)

    ¼öÇÐÀû ¿¬»êÀÚ

    ¿ì¸®´Â ÀÌ¹Ì ´ëºÎºÐÀÇ ¼öÇÐÀû ¿¬»êÀÚ¸¦ º¸¾Ò´Ù. ¿©·¯ºÐÀº '´Ü¼øÇÑ ¿¬¼Ó¿­'ÀÇ Àå¿¡¼­ ±×°ÍµéÀÌ ÇÊ¿äÇß¾ú´Ù. ±×·¸Áö¸¸ ¿ä¾àÇÏÀÚ¸é:

    ¼öÇÐÀû ±×¸®°í ºñÆ® ¿¬»êÀÚ

    ¿¬»êÀÚ ¿¹ÇØ ¼³
    M + NM °ú N ÀÇ µ¡¼À
    M - NM ¿¡¼­ N »©±â
    M * NM °ú N ÀÇ °ö¼À
    M / N³ª´©±â, M°ú NÀÇ Çü¿¡ µû¶ó¼­ Á¤¼ö ȤÀº ºÎµ¿¼Ò¼öÁ¡À» °á°ú·Î °¡Áø´Ù.
    ¸¸¾à M ¶Ç´Â N ÀÌ ½Ç¼ö¶ó¸é(¾Æ·¡¸¦ º¸¶ó) ±× °á°ú´Â ½Ç¼ö°¡ µÉ °ÍÀÌ´Ù.
    M % N³ª¸ÓÁö: MÀ» NÀ¸·Î ³ª´« ³ª¸ÓÁö¸¦ ã´Â´Ù.
    M**NÁö¼öÈ­: M À» NÁ¦°ö

    ¿ì¸®´Â °¡Àå ¸¶Áö¸· ¿¹Á¦¸¦ Àü¿¡ º»ÀûÀÌ ÀÖ´Ù. ±×·¡¼­ ¾î¶² Á¤¼öÇü º¯¼ö¸¦ ¸¸µé°í Áö¼ö ¿¬»êÀÚ¸¦ »ç¿ëÇÏ´Â ¿¹Á¦¸¦ Çϳª »ìÆ캸ÀÚ:

    >>> i1 = 2     # create an integer and assign it to i1
    >>> i2 = 4
    >>> i3 = 2**4  # assign the result of 2 to the power 4 to i3
    >>> print i3
    16
    

    BASIC Á¤¼ö

    BASIC Àº Á¤¼ö¿¡ °üÇØ ¶Ç ´Ù¸¥ ±ÔÄ¢µéÀ» °¡Áö°í ÀÖ´Ù. Á¤¼öÇü º¯¼ö¸¦ ¼±¾ðÇϱâ À§ÇÏ¿© º£ÀÌÁ÷¿¡¼­ ¿©·¯ºÐÀº ¾Æ¹«°Íµµ ºÙÀÌÁö ¾ÊÀº À̸§ ±×´ë·Î¸¦ »ç¿ëÇÏ´ø°¡ ¿ì¸®°¡ ¿øÇÏ´Â °ÍÀÌ Á¤¼ö¶ó´Â ½ÅÈ£¸¦ º£ÀÌÁ÷¿¡°Ô ÁÙ ¼ö°¡ ÀÖ´Ù (ÀÌ°ÍÀÌ Á»´õ È¿À²ÀûÀÏ °ÍÀÌ´Ù.) ¿ì¸®´Â À̸§À» '%'·Î ³¡³¿À¸·Î¼­ ÀÌ°ÍÀ» ÇÒ ¼ö ÀÖ´Ù:

    FOO = 8   REM FOO can hold any kind of number
    BAR% = 9  REM BAR can only hold integers
    

    BASIC¿¡¼­ Á¤¼öÇü º¯¼ö¿¡ °üÇÏ¿© ¸¶Áö¸· ÁÖÀÇ»çÇ×:

    i% = 7
    PRINT 2 * i%
    i% = 4.5
    PRINT 2 * i%
    

    4.5°¡ i%¿¡ ÇÒ´çµÈ °ÍÀÌ ÀÛµ¿ÇÏ´Â °Í°°ÀÌ º¸ÀÌÁö¸¸ ´ÜÁö Á¤¼öºÎºÐ¸¸ÀÌ ½ÇÁ¦·Î ÇÒ´çµÇ¾ú´Ù´Â °ÍÀ» ÁÖ¸ñÇ϶ó. ÀÌ°ÍÀ» º¸¸é ÆÄÀ̽ãÀÌ Á¤¼ö³ª´°¼ÀÀ» ´Ù·ç´ø ¹æ½ÄÀÌ »ý°¢³­´Ù. ¸ðµç ÇÁ·Î±×·¡¹Ö ¾ð¾î´Â ÀڽŸ¸ÀÇ ÀÌ·¯ÇÑ °³¼ºÀ» °¡Áø´Ù!

    Tcl ¼ýÀÚ

    Áö³­¹ø¿¡ ¾ð±ÞÇÑ °Í°°ÀÌ TclÀº ¸ðµç °ÍÀ» ³»ºÎÀûÀ¸·Î ¹®ÀÚ¿­·Î ÀúÀåÇÑ´Ù, ±×·¸Áö¸¸ »ç¿ëÀÚ´Â ÀÌ°Í ¶§¹®¿¡ ´Ù¸¥ Ưº°ÇÑ Â÷À̸¦ ´À³¢Áö´Â ¾Ê´Âµ¥ ¿Ö³ÄÇϸé TclÀÌ µ¤°³ ¾Æ·¡¿¡¼­ ±× °ªÀ» ¼ýÀÚ·Î ¹Ù²Ù¾îÁÖ°í ¶Ç ´Ù½Ã, ¿ø·¡ÀÇ °ªÀ¸·Î ȯ¿ø½ÃÄÑÁֱ⠶§¹®ÀÌ´Ù. ±×·¸°Ô ¸ðµç ¼ýÀÚÀÇ Å©±â¿¡ ´ëÇÑ ¸ðµç Á¦ÇÑ »çÇ×µéÀº ¿©ÀüÈ÷ Àû¿ëµÈ´Ù.

    Tcl¿¡¼­ ¼ýÀÚ¸¦ »ç¿ëÇÏ´Â °ÍÀº ´ëºÎºÐÀÇ ¾ð¾îº¸´Ù´Â ¾à°£Àº ´õ º¹ÀâÇѵ¥ ¿Ö³ÄÇÏ¸é ¾î¶² °è»êÀ» ÇÏ°íÀÚ ÇÑ´Ù¸é ¿©·¯ºÐÀº ±× ÀÎÅÍÇÁ¸®ÅÍ¿¡°Ô °è»êÀÌ ÇÊ¿äÇÏ´Ù´Â ½ÅÈ£¸¦ ÁÖ¾î¾ß¸¸ Çϱ⠶§¹®ÀÌ´Ù. ¿©·¯ºÐÀº ±×°ÍÀ» expr¸í·É¾î¸¦ »ç¿ëÇÏ¿© °è»êÀ» ÇÑ´Ù:

    % put [expr 6 + 5]
    11
    

    TclÀº °¢°ýÈ£¸¦ º¸°í¼­ ¸¶Ä¡ ¸í·É¾î ¶óÀο¡¼­ ŸÀÌÇÁ µÈ °Í °°ÀÌ, ±× ºÎºÐÀ» ¸ÕÀú Æò°¡ÇÑ´Ù. Æò°¡Áß¿¡ expr ¸í·É¾î¸¦ º¸°Ô µÇ¸é °è»êÀ» ¼öÇàÇÑ´Ù. °á°ú´Â put ¸í·É¾î·Î ½ºÅ©¸°¿¡ Ãâ·ÂµÈ´Ù. ¸¸¾à ¿©·¯ºÐÀÌ Á÷Á¢ÀûÀ¸·Î ±× Çհ踦 Ãâ·ÂÇÏ·Á°í ÇÑ´Ù¸é TclÀº ´ÜÁö "6 + 5"¸¸À» Ãâ·ÂÇÒ °ÍÀÌ´Ù:

    % put 6 + 5
    6 + 5
    

    ½Ç ¼ö

    ÀÌ°ÍÀº ºÐ¼öÀÌ´Ù. ±×°ÍÀº ´ë´ÜÈ÷ Å« ¼ö¸¦ ³ªÅ¸³¾ ¼ö À־, MAXINTº¸´Ù ÈξÀ ´õ Å©Áö¸¸, Á¤¹Ðµµ´Â ¶³¾îÁø´Ù. ´Ù½Ã ¸»Çϸé Á¤È®È÷ µ¿ÀÏÇؾ߸¸ ÇÏ´Â µÎ °³ÀÇ ½Ç¼ö°¡ ÄÄÇ»ÅÍ¿¡ ÀÇÇÏ¿© ºñ±³µÉ ¶§´Â ±×·¸Áö ¾Ê´Ù´Â °ÍÀÌ´Ù. ÀÌ°ÍÀº ÄÄÇ»ÅÍ°¡ ±Ù»çÄ¡·Î ¾î¸²¼ÀÀ» Çϱ⠶§¹®ÀÌ´Ù. ±×·±½ÄÀ¸·Î 4.0Àº ÄÄÇ»ÅÍ¿¡ ÀÇÇؼ­´Â 3.9999999.... ¶Ç´Â 4.000000....01 ·Î ³ªÅ¸³»¾îÁú ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ¾î¸²¼ÀÀº ´ëºÎºÐÀÇ ¸ñÀû¿¡´Â ÃæºÐÇÏÁö¸¸ ¶§·Î´Â ÀÌ°ÍÀº ´ë´ÜÈ÷ Áß¿äÇÑ ¹®Á¦ÀÌ´Ù! ¸¸¾à ¿©·¯ºÐÀÌ ½Ç¼ö¸¦ »ç¿ëÇßÀ»¶§ ¿ì½º¿î °á°ú¸¦ ¾ò¾ú´Ù¸é, ÀÌ°ÍÀ» ¸í½ÉÇ϶ó.

    ºÎµ¿¼Ò¼öÁ¡ ¼ö´Â ¼öÄ¡¸¦ Á¤¼ö°ªÀ¸·Î À߶󳻴 ´É·Â°ú ÇÔ²² Á¤¼ö¿Í ¶È °°Àº 󸮹æ½ÄÀ» °¡Áø´Ù.

    º¹¼Ò¼ö ȤÀº Çã¼ö

    ¿©·¯ºÐÀÌ °úÇÐÀû ȤÀº ¼öÇÐÀû ¹è°æÀ» °¡Áö°í ÀÖ´Ù¸é ¿©·¯ºÐÀº º¹¼Ò¼ö¿¡ ´ëÇÏ¿© ±Ã±ÝÇÒ °ÍÀÌ´Ù. ±×·¸Áö ¾Ê´Ù¸é ¿©·¯ºÐÀº º¹¼Ò¼ö¸¦ µé¾îº¸Áöµµ ¾Ê¾ÒÀ» ¼ö ÀÖ´Ù! ¾îÂîµÇ¾úµç ¾î¶² ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼­´Â, ÆÄÀ̽ãÀ» Æ÷ÇÔÇÏ¿©, º¹¼Ò¼ö ÇüÀ» ³»ºÎÀûÀ¸·Î Áö¿øÇÏ¸ç ¹Ý¸é¿¡ ´Ù¸¥ ¾ð¾îµéÀº º¹¼Ò¼ö¸¦ ´Ù·ê ¼ö ÀÖ´Â ÇÔ¼öÀÇ ¶óÀ̺귯¸®¸¦ Á¦°øÇØÁØ´Ù. ±×¸®°í ¿©·¯ºÐÀÌ ¹¯±â Àü¿¡ (³»°¡ ¸ÕÀú ¸»Çϸé), Çà·Ä ¿ª½Ã ¶È °°Àº °ÍÀÌ Àû¿ëµÈ´Ù.

    ÆÄÀ̽㿡¼­ º¹¼Ò¼ö´Â ´ÙÀ½°ú °°ÀÌ Ç¥ÇöµÈ´Ù:

    (real+imaginaryj)
    

    ±×·±½ÄÀ¸·Î ´Ü¼øÇÑ º¹¼Ò¼öÀÇ µ¡¼ÀÀº ´ÙÀ½°ú °°´Ù:

    >>> M = (2+4j)
    >>> N = (7+6j)
    >>> print M + N
    (9+10j)
    

    ¸ðµç Á¤¼ö ¿¬»êÀº ¶ÇÇÑ º¹¼Ò¼ö¿¡µµ Àû¿ëµÈ´Ù.

    ºÒ¸®¾ð °ª - True and False

    Á¦¸ñÀÌ ¸»ÇØÁÖ´Â ¹Ù¿Í °°ÀÌ, ÀÌ·¯ÇÑ ÇüÅ´ ¿ÀÁ÷ 2°¡Áö °ª¸¸À» °¡Áø´Ù - Âü true À̰ųª ȤÀº °ÅÁþ false¸¸À» °¡Áø´Ù. ¾î¶² ¾ð¾î´Â ºÒ¸®¾ð °ªÀ» Á÷Á¢ Áö¿øÇÏ°í, ´Ù¸¥ ¾ð¾î¿¡¼­´Â ¾î¶² ¼öÄ¡ °ª (º¸ÅëÀº 0)Àº °ÅÁþÀ» ³ªÅ¸³»°í ´Ù¸¥ °ªµé( 1ȤÀº -1)µîÀº ÂüÀ» ³ªÅ¸³½´Ù´Â °ü·Ê¸¦ »ç¿ëÇÑ´Ù.

    ºÒ¸®¾ð °ªÀº ¶§·Î´Â "Áø¸® °ª"À̶ó°í ¾Ë·ÁÁ® Àִµ¥ ¿Ö³ÄÇÏ¸é ¹«¾ùÀΰ¡°¡ ÂüÀΰ¡ ȤÀº ¾Æ´Ñ°¡ÇÏ´Â °ÍÀ» °ËÁõÇϴµ¥ ±×µéÀÌ »ç¿ëµÇ¾îÁö±â ¶§¹®ÀÌ´Ù. ¿¹¸¦ µé¾î ¿©·¯ºÐÀÌ ¸ðµç ÆÄÀÏÀ» ÇÑ µð·ºÅ丮¿¡ ¹é¾÷ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇÑ´Ù¸é ¿©·¯ºÐÀº °¢ ÆÄÀÏÀ» ¹é¾÷ÇÏ°í ¿î¿µÃ¼Á¦¿¡°Ô ´ÙÀ½ ÆÄÀÏÀÇ À̸§À» ¿ä±¸ÇÒ ¼öµµ ÀÖ´Ù. ¸¸¾à ÀúÀåÇؾßÇÒ ´õ ÀÌ»óÀÇ ÆÄÀÏÀÌ ¾ø´Ù¸é ¿î¿µÃ¼Á¦´Â ºó ¹®ÀÚ¿­À» ¹ÝȯÇÒ °ÍÀÌ´Ù. ¿©·¯ºÐÀº ±×·¯¸é ±× À̸§ÀÌ ºó ¹®ÀÚ¿­ÀÎÁö¸¦ Á¡°ËÇØ º¼¼ö ÀÖÀ¸¸ç ±× °á°ú¸¦ ºÒ¸®¾ð °ª( ºó¹®ÀÚ¿­À̸é Âü)À¸·Î ÀúÀåÇÒ ¼ö ÀÖ´Ù. ¿©·¯ºÐÀº ¾î¶»°Ô ¿ì¸®°¡ ±× °á°ú¸¦ »ç¿ëÇÏ´ÂÁö ÀÌ °­ÁÂÀÇ ÈĹݺο¡¼­ º¸°Ô µÉ °ÍÀÌ´Ù.

    ºÒ¸®¾ð (ȤÀº ³í¸®Àû) ¿¬»êÀÚ

    ¿¬»êÀÚ ¿¹Á¦¼³ ¸í°á °ú
    A and B±×¸®°íA,B µÑ´Ù ÂüÀ̸é Âü, ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþ.
    A or B¶Ç´ÂA,B µÑ Áß Çϳª¸¸ ÂüÀ̸é Âü. A ¿Í B ¸ðµÎ °ÅÁþÀÌ¸é °ÅÁþ.
    A == Bµ¿µîA °¡ B ¿Í °°À¸¸é Âü.
    A != B
    ¶Ç´Â
    A <> B
    °°Áö ¾ÊÀ½A °¡ B ¿Í °°Áö ¾ÊÀ¸¸é Âü.
    not BºÎÁ¤B Â÷ ÂüÀÌ ¾Æ´Ï¸é Âü

    ÁÖ ÀÇ: °¡Àå ¸¶Áö¸·ÀÇ ¿¹Á¦´Â ÇÑ°³ÀÇ °ªÀ» ´Ù·ç¸ç, ´Ù¸¥ °Íµé ¸ðµÎ´Â µÎ °³ÀÇ °ªÀ» ºñ±³ÇÑ´Ù.

    ÁýÇÕÇü

    ÄÄÇ»ÅÍ °úÇÐÀº ÁýÇÕ°ú ±× °ÍÀÇ ´Ù¾çÇÑ ÇàŵéÀ» ¿¬±¸Çϴµ¥¿¡ ¸ôµÎÇØ ¿Ô´Ù. ¶§·Î´Â ÁýÇÕÀº ±×¸©À̶ó°íµµ ºÒ¸®¿î´Ù. ÀÌ ¼½¼Ç¿¡¼­ ¿ì¸®´Â ¸ÕÀú ÆÄÀ̽㿡¼­ Áö¿øµÇ´Â ÁýÇÕÇüµéÀ» »ìÆ캸°í ¿©·¯ºÐÀÌ ´Ù¸¥ ¾ð¾î¿¡¼­ ¸¶ÁÖÄ¡°Ô µÉ ´Ù¸¥ Á¾·ùÀÇ ÁýÇÕÇü¿¡ ´ëÇÑ ÂªÀº ¿ä¾àÀ¸·Î °á·ÐÀ» ³»·ÁÇÑ´Ù.

    Python ÁýÇÕÇüµé

    ¸®½ºÆ®

    ¸®½ºÆ®´Â Ç׸ñÀÇ ¿¬¼ÓÀÌ´Ù. ¹è¿­°ú ´Ù¸¥ Á¡Àº ±×°ÍÀÌ Ä¿Áú¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù - ¿©·¯ºÐÀÌ ¶Ç ´Ù¸¥ Ç׸ñÀ» Ãß°¡Çϱ⸸ ÇÏ¸é µÈ´Ù. ±×·¯³ª ÀϹÝÀûÀ¸·Î Áöǥȭ µÇ¾î ÀÖÁö ¾Ê¾Æ¼­ ¿©·¯ºÐÀº ÇÊ¿ä·Î ÇÏ´Â Ç׸ñÀ» ±× ¸®½ºÆ®¸¦ óÀ½ºÎÅÍ ¸¶Áö¸·±îÁö ¹æ¹®Çؼ­ °¢°¢ÀÇ Ç׸ñÀÌ ¿©·¯ºÐÀÌ ¿øÇÏ´ø Ç׸ñÀÎÁö Á¡°ËÀ» ÇÔÀ¸·Î½á ã¾Æ¾ß¸¸ ÇÑ´Ù. ÆÄÀ̽ãÀ̳ª Tcl¸ðµÎ ¸®½ºÆ®¸¦ ³»ÀåÇÏ°í ÀÖ´Ù. º£ÀÌÁ÷¿¡¼­´Â ´õ ¾î·Á¿ö¼­ ¿ì¸®´Â ¸®½ºÆ®¸¦ Èä³»³»±â À§ÇØ ¾à°£ ²Ä¼öÀûÀÎ ÇÁ·Î±×·¡¹ÖÀ» Çؾ߸¸ ÇÑ´Ù. ±× ´ë½Å¿¡ º£ÀÌÁ÷ ÇÁ·Î±×·¡¸ÓµéÀº º¸Åë ´ë´ÜÈ÷ Ä¿´Ù¶õ ¹è¿­À» ¸¸µé¾î »ç¿ëÇÑ´Ù. ÆÄÀ̽㠶ÇÇÑ ¿©·¯ºÐÀÌ ¸®½ºÆ®¸¦ Áöǥȭ ÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. ¿ì¸®°¡ ¾ÕÀ¸·Î º¸°Ô µÇ°ÚÁö¸¸ ÀÌ°ÍÀº ´ë´ÜÈ÷ À¯¿ëÇÑ ¾ð¾î »ç¾çÀÌ´Ù.

    ¸®½ºÆ® 󸮹æ¹ý

    ÆÄÀ̽ãÀº ÁýÇÕÇü¿¡ °üÇÏ¿© ¸¹Àº 󸮹æ¹ýµéÀ» Á¦°øÇØÁØ´Ù. °ÅÀÇ ±×µé ¸ðµÎ ´Ù ¸®½ºÆ®¿¡ Àû¿ëµÇ¸ç ÇϺμ¼Æ®µµ ´ÜÁö ¹®ÀÚµéÀÇ Æ¯º°ÇÑ ÇüÅÂÀÇ ¸®½ºÆ®ÀÏ »ÓÀÎ ¹®ÀÚ¿­À» Æ÷ÇÔÇÏ¿©, ´Ù¸¥ ÁýÇÕÇü¿¡ Àû¿ëµÈ´Ù. ÆÄÀ̽㿡¼­ ¸®½ºÆ®¸¦ »ý¼ºÇÏ°í Á¢±ÙÇϱâ À§Çؼ­ ¿ì¸®´Â °¢°ýÈ£¸¦ »ç¿ëÇÑ´Ù. ¿©·¯ºÐÀº °¢°ýÈ£ ÇѽÖÀ» ¾Æ¹«°Íµµ ¾È¿¡ ³ÖÁö ¾Ê°í »ç¿ëÇÔÀ¸·Î½á ºó ¸®½ºÆ®¸¦ ¸¸µé ¼ö ÀÖÀ¸¸ç, ¶Ç´Â °¢°ýÈ£ ¾È¿¡ ÀÖ´Â °ªµéÀ» Äĸ¶·Î ºÐ¸®ÇÔÀ¸·Î½á ³»¿ëÀÖ´Â ¸®½ºÆ®¸¦ ¸¸µé ¼öµµ ÀÖ´Ù:

    >>> aList = []
    >>> another = [1,2,3]
    >>> print another
    [1, 2, 3]
    

    ¿ì¸®´Â ÁöÇ¥ ¼ýÀÚ¸¦ »ç¿ëÇÏ¿© °³º°ÀûÀÎ ¿ä¼Ò¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù. ù¹ø° ¿ä¼ÒÀÇ À§Ä¡´Â 0ÀÌ°í, °¢°ýÈ£ ¾È¿¡´Ù°¡ »ç¿ëÇÑ´Ù:

    >>> print another[2]
    3
    

    ¿ì¸®´Â ¶ÇÇÑ ¸®½ºÆ®ÀÇ ¿ä¼ÒµéÀÇ °ªÀ» ºñ½ºÇÑ ¹æ½ÄÀ¸·Î º¯°æÇÒ ¼ö ÀÖ´Ù:

    >>> another[2] = 7
    >>> print another
    [1, 2, 7]
    

    ¿©·¯ºÐÀº À½¼ö¸¦ ÁöÇ¥¼ýÀÚ·Î »ç¿ëÇÏ¿© ¸®½ºÆ®ÀÇ ¸¶Áö¸·À¸·Î ºÎÅÍÀÇ ±¸¼º¿ø¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù. -1À» »ç¿ëÇÏ¿© °¡Àå ¸¶Áö¸· Ç׸ñÀ» ¾ò´Â°ÍÀº ´ë´ÜÈ÷ ÈçÇÑ ÀÏÀÌ´Ù:

    >>> print another[-1]
    7
    

    ¿ì¸®´Â ¶ÇÇÑ »õ·Î¿î ¿ä¼Ò¸¦ ¸®½ºÆ®¿¡ ³¡¿¡´Ù°¡ append()¿¬»êÀÚ(¸Þ½îµå)¸¦ »ç¿ëÇÏ¿© Ãß°¡ÇÒ ¼ö ÀÖ´Ù:

    >>> aList.append(42)
    >>> print aList
    [42]
    

    ½ÉÁö¾î´Â ¸®½ºÆ®¾È¿¡ ¶Ç ´Ù¸¥ ¸®½ºÆ®¸¦ °¡Áú ¼öµµ ÀÖ´Ù, ±×·±½ÄÀ¸·Î ¿ì¸®°¡ µÎ¹ø° ¸®½ºÆ®¸¦ ù ¹ø° ¸®½ºÆ®¿¡ Ãß°¡ÇÏ°íÀÚ ÇÑ´Ù¸é:

    >>> aList.append(another)
    >>> print aList
    [42, [1, 2, 7]]
    

    °á°ú°¡ µÎ°³ÀÇ ¿ä¼Ò¸¦ °¡Áø ¸®½ºÆ®ÀÌÁö¸¸ µÎ ¹ø° ¿ä¼Ò´Â (°¢°ýÈ£[ ]·Î µÑ·¯½Î¿© º¸ÀÌ´Â °Í°°ÀÌ)±× ÀÚü·Î ¸®½ºÆ®¶ó´Â °ÍÀ» ÁÖ¸ñÇ϶ó. ÀÌ°ÍÀº À¯¿ëÇÏ´Ù ¿Ö³ÄÇÏ¸é ±×°ÍÀ¸·Î ¿ì¸®´Â ¸®½ºÆ®ÀÇ ¸®½ºÆ®¸¦ »ç¿ëÇÏ´Â °ÝÀÚ³ª ȤÀº Ç¥¸¦ ±¸ÇöÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ¿ì¸®´Â ±×·¯¸é µÎ°³ÀÇ ÁöÇ¥¸¦ »ç¿ëÇÏ¿© ¿ä¼Ò 7 ¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù.:

    >>> print aList[1][2]
    7
    

    ù¹ø° ÁöÇ¥, 1Àº µÎ¹ø° ¿ä¼Ò¸¦ ÃßÃâÇÏ°í ±× ¿ä¼Ò´Â À̹ø¿¡´Â ¸®½ºÆ®ÀÌ´Ù. µÎ¹ø° ÁöÇ¥, 2´Â ÇϺθ®½ºÆ®ÀÇ ¼¼¹ø°ÀÇ ¿ä¼Ò¸¦ ÃßÃâÇÑ´Ù.

    ¿ä¼Ò¸¦ Ãß°¡ÇÏ´Â °ÍÀÇ ¹Ý´ë´Â, ¹°·Ð, ±×°ÍµéÀ» Á¦°ÅÇÏ´Â °ÍÀÌ¸ç ±×·¯±â À§Çؼ­ ¿ì¸®´Â del¸í·É¾î¸¦ »ç¿ëÇÑ´Ù:

    >>> del aList[1]
    >>> print aList
    [42]
    

    ¸¸¾à ¿ì¸®°¡ µÎ °³ÀÇ ¸®½ºÆ®¸¦ Çϳª·Î °áÇÕÇϱ⸦ ¿øÇÑ´Ù¸é ¿ì¸®´Â ¹®ÀÚ¿­¿¡¼­ º¸¾Ò´ø ¶È °°Àº '+' ¿¬°á ¿¬»êÀÚ¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù:

    >>> newList = aList + another
    >>> print newList
    [42, [1, 2, 7], 1, 2, 7]
    

    °°Àº ¹æ½ÄÀ¸·Î ¿ì¸®´Â ¹Ýº¹¿¬»êÀÚ¸¦ Àû¿ëÇÏ¿© ¸®½ºÆ®¸¦ °°Àº °ªÀ¸·Î ä¿ï ¼ö ÀÖ´Ù:

    >>> zeroList = [0] * 5
    >>> print zeroList
    [0, 0, 0, 0, 0]
    

    ¸¶Áö¸·À¸·Î, ¿ì¸®´Â len() ³»ÀåÇÔ¼ö¸¦ »ç¿ëÇÏ¿© ¸®½ºÆ®ÀÇ ±æÀ̸¦ °áÁ¤ÇÒ ¼ö ÀÖ´Ù:

    >>> print len(aList)
    2
    >>> print len(zeroList)
    5
    

    Tcl ¸®½ºÆ®

    Tcl ¶ÇÇÑ ¸®½ºÆ®ÇüÀ» ³»ÀåÇÏ°í ÀÖÀ¸¸ç ÀÌ·¯ÇÑ ¸®½ºÆ®¸¦ ´Ù·ç´Â ´Ù¾çÇÑ ¸í·É¾î¸¦ °¡Áö°í ÀÖ´Ù. ÀÌ·¯ÇÑ ¸í·É¾îµéÀº 'l' Á¢µÎ»ç¿¡ ÀÇÇØ ½Äº°µÈ´Ù, ¿¹¸¦ µé¾î linsert,lappend, lindex,µîµî. °£´ÜÇÑ Tcl¸®½ºÆ®¸¦ »ý¼ºÇÏ°í ±¸¼º¿ø¿¡ Á¢±ÙÇϴ¿¹Á¦´Â ´ÙÀ½°ú °°´Ù:

    % set L [list 1 2 3]
    % put [lindex $L 2]
    3
    

    ÅÍÇÃ Tuple

    ¸ðµç ¾ð¾î°¡ ÅÍÇà ±¸Á¶¸¦ Á¦°øÇÏ´Â °ÍÀº ¾Æ´ÏÁö¸¸ ±×°ÍÀ» Á¦°øÇÏ´Â ¾ð¾î¿¡¼­ ÅÍÇà ±¸Á¶´Â ´ë´ÜÈ÷ À¯¿ëÇÏ´Ù. ÅÍÇÃÀº ½ÇÁ¦·Î´Â ÇϳªÀÇ ´ÜÀ§·Î Ãë±ÞµÉ ¼ö ÀÖ´Â °ªµéÀÇ ÀÓÀÇÀûÀÎ ÁýÇÕÀÏ »ÓÀÌ´Ù. ¿©·¯¸éÀ¸·Î ÅÍÇÃÀº ¸®½ºÆ®¿Í ´à¾Ò´Ù. ±×·¯³ª Çö°ÝÇÑ Â÷ÀÌÁ¡Àº ÅÍÇÃÀº ±³È¯ºÒ°¡´ÉimmutableÀ̶ó´Â °ÍÀÌ´Ù. ´Ù½Ã¸»ÇÏ¸é ¿©·¯ºÐÀÌ ÅÍÇÃÀ» º¯°æÇÒ ¼ö ¾øÀ¸¸ç Çѹø »ý¼ºµÇ°í ³ª¸é ¿ä¼Ò¸¦ Ãß°¡Çϰųª ÇÒ¼ö ¾ø´Ù´Â ¶æÀÌ´Ù. ÆÄÀ̽㿡¼­, ÅÍÇÃÀº °ýÈ£·Î °£´ÜÇÏ°Ô Ç¥½ÃµÈ´Ù. °ýÈ£¾È¿¡´Â Äĸ¶·Î °ªµéÀÇ ¸®½ºÆ®¸¦ ºÐ¸®ÇÏ´Â µ¥, ´ÙÀ½°ú °°´Ù:

    >>> aTuple = (1,3,5)
    >>> print aTuple[1]    # use indexing like a list
    3
    >> aTuple[2] = 7       # error, can’t change a tuple’s elements
    Traceback (innermost last):
      File "", line 1, in ?
      	aTuple[2] = 7
    TypeError: object doesn't support item assignment
    

    ±â¾ïÇؾßÇÒ °¡Àå Áß¿äÇÑ °ÍÀº ÅÍÇÃÀ» Á¤ÀÇÇϱâ À§ÇÏ¿© °ýÈ£°¡ »ç¿ëµÇ´Â ¹Ý¸é¿¡, ÁöǥȭÇϴµ¥¿¡´Â °¢°ýÈ£°¡ »ç¿ëµÇ¸ç ¿©·¯ºÐÀº ÅÍÇÃÀ» Çѹø ¸¸µé¾îÁö°í ³ª¸é º¯°æÇÒ ¼ö ¾ø´Ù´Â °ÍÀÌ´Ù. ±×°Í¸¸ »©°í´Â ´ëºÎºÐÀÇ ¸®½ºÆ® 󸮹æ¹ýµéÀÌ ¶ÇÇÑ ÅÍÇÿ¡µµ Àû¿ëµÈ´Ù.

    »çÀü ȤÀº Çؽ¬ÇÔ¼ö( Hash )

    »çÀüÀº À̸§¿¡¼­ ´À²¸Áö´Â ¹Ù¿Í °°ÀÌ Å°¿Í ¿¬°üµÈ °ªÀ» Æ÷ÇÔÇÑ´Ù, °°Àº ¹æ½ÄÀ¸·Î ¹®ÀÚÀûÀÎ »çÀüµµ ÀÇ¹Ì¿Í ´Ü¾î¸¦ ¿¬°ü½ÃŲ´Ù. ±× °ªÀº »çÀüÀ» Å°·Î Áöǥȭ ÇÔÀ¸·Î½á °Ë»öµÉ ¼ö ÀÖ´Ù. ¹®ÀÚÀûÀÎ »çÀü°ú ´Ù¸¥ Á¡Àº Å°°¡ (ÀÚÁÖ ±×·¸°Ô »ç¿ëµÊ¿¡µµ ºÒ±¸ÇÏ°í) ¹Ýµå½Ã ¹®ÀÚ¿­À̾î¾ß ÇÒ ÇÊ¿ä°¡ ¾øÀ¸³ª ÅÍÇðú ¼ýÀÚ¸¦ Æ÷ÇÔÇÏ¿© ¾î¶°ÇÑ ÇüÅÂÀÇ º¯°æºÒ°¡ Çüµµ °¡´ÉÇÏ´Ù. ºñ½ÁÇÏ°Ô Å°¿Í ¿¬°üµÈ °ªµéÀº ¾î¶°ÇÑ Á¾·ùÀÇ ÆÄÀ̽㠵¥ÀÌŸÇüµµ °¡´ÉÇÏ´Ù. ¼­ÀüÀº º¸Åë ³»ºÎÀûÀ¸·Î Çؽ¬Å×À̺íÀ̶ó°í ¾Ë·ÁÁ® ÀÖ´Â Áøº¸µÈ ÇÁ·Î±×·¡¹Ö ±â¼úÀ» »ç¿ëÇÏ¿© ±¸ÇöµÈ´Ù. ±×·¯ÇÑ ÀÌÀ¯·Î »çÀüÀº ¶§·Î´Â Çؽ¬¶ó°íµµ ºÒ¸®¿î´Ù. (Çؽ¬¶ó´Â) ¸¶¾à°ú´Â ÀüÇô »ó°ü ¾ø´Ù!

    »çÀüÀÇ °ª¿¡ Á¢±ÙÇÏ·Á¸é Å°¸¦ ÅëÇØ¾ß Çϱ⠶§¹®¿¡ ¿©·¯ºÐÀº À¯ÀÏÇÑ Å°·Î ¿ä¼Ò¸¦ Áý¾î ³ÖÀ» ¼ö¸¸ ÀÖ´Ù. »çÀüÀº ´ë´ÜÈ÷ À¯¿ëÇÑ ±¸Á¶À̸ç ÆÄÀ̽㿡¼­´Â ³»ÀåÇüÀ¸·Î Á¦°øµÈ´Ù. ±×·¸Áö¸¸ ¿©·¯ ´Ù¸¥ ¾ð¾î¿¡¼­´Â ¿©·¯ºÐÀº ¸ðµâÀ» »ç¿ëÇÏ´ø°¡ ȤÀº ½ÉÁö¾î Á÷Á¢ ¸¸µé¾î ½á¾ß¸¸ ÇÑ´Ù. ¿ì¸®´Â »çÀüÀ» ¿©·¯°¡Áö ¹æ¹ýÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç ¿ì¸®´Â ÈÄ¿¡ dzºÎÇÑ ¿¹Á¦µéÀ» º¸°Ô µÉ °ÍÀÌ´Ù. ±×·¯³ª Áö±Ý ¿©±â¿¡, ÆÄÀ̽㿡¼­ ¾î¶»°Ô »çÀüÀ» ¸¸µå´ÂÁö¸¦ º¸À̸é, ¿ä¼Òµé·Î »çÀüÀ» ä¿ì°í ±×°ÍµéÀ» ´Ù½Ã Àо¶ó:

    >>> dict = {}
    >>> dict['boolean'] = "A value which is either true or false"
    >>> dict['integer'] = "A whole number"
    >>> print dict['boolean']
    A value which is either true or false
    

    ¿ì¸®°¡ »çÀüÀ» È°°ýÈ£·Î ÃʱâÈ­ÇÏ°í, ±×¸®°í´Â °¢°ýÈ£¸¦ »ç¿ëÇÏ¿© °ªµéÀ» ÇÒ´çÇÏ°í ÀоúÀ½À» ÁÖ¸ñÇ϶ó.

    »çÀüÀÇ ³»ºÎÀûÀÎ ±¸Á¶ ¹®Á¦·Î ÀÎÇÏ¿© »çÀüÀº ¿ì¸®°¡ Áö±Ý±îÁö º¸¾Æ¿Â ¸¹Àº ÁýÇÕÇü ¿¬»êÀÚµéÀ» Áö¿øÇÏÁö ¾Ê´Â´Ù. ¿¬°á, ¹Ýº¹ ¶Ç´Â Ãß°¡ ¿¬»êµîÀº ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù. ¿ì¸®°¡ »çÀüÀÇ Å°¿¡ Á¢±ÙÇϵµ·Ï µµ¿ÍÁÖ´Â keys()ÇÔ¼ö¸¦ ¿ì¸®´Â »ç¿ëÇÒ ¼ö Àִµ¥ ±× ÇÔ¼ö´Â »çÀü¿¡ ÀÖ´Â Å°µéÀÇ ¸®½ºÆ®¸¦ ¹ÝȯÇØÁØ´Ù.

    ¿©·¯ºÐÀÌ ¾à°£ Áö°ã´Ù¸é, ¿©±â¿¡¼­ ¿©·¯ºÐÀº ´ÙÀ½ Àå À¸·Î Á¡ÇÁÇÒ ¼ö ÀÖ´Ù. ¿ì¸®°¡ Áö±Ý±îÁö ¾ð±ÞÇÏÁö ¾ÊÀº µ¥ÀÌŸÇü°ú ¸¶ÁÖÄ¡±â ½ÃÀÛÇÒ ¶§ ¹Ýµå½Ã µ¹¾Æ¿Í ÀÌ ÀåÀ» ³¡³»¾ß¸¸ ÇÑ´Ù´Â °ÍÀ» ±â¾ïÇ϶ó.

    ´Ù¸¥ ÁýÇÕ Çü

    ¹è¿­ ȤÀº º¤ÅÍ

    Áöǥȭ µÇ¾î ½±°í ºü¸£°Ô °Ë»ö°¡´ÉÇÑ Ç׸ñµéÀÇ ¸®½ºÆ®.
    º¸Åë ¿©·¯ºÐÀº ¾ó¸¶³ª ¸¹Àº Ç׸ñÀ» ÀúÀåÇϱ⸦ ¿øÇÏ´ÂÁö ¸ÕÀú ¸»ÇØ ÁÖ¾î¾ß¸¸ ÇÑ´Ù. ³»°¡ A¶ó°í ºÎ¸£´Â ¹è¿­À» °¡Áö°í ÀÖ´Ù°í ÇÏÀÚ, ±×·¯¸é ³ª´Â ¼¼¹ø° Ç׸ñÀ» A¿¡ A[3]À̶ó°í ¾¸À¸·Î½á ÃßÃâÇÒ ¼ö ÀÖ´Ù. ¹è¿­Àº º£ÀÌÁ÷¿¡¼­ ±âº»ÀûÀÌ´Ù, »ç½Ç ÁýÇÕÇüÀ¸·Î´Â À¯ÀÏÇÏ°Ôonly ³»ÀåµÇ¾ú´Ù. ÆÄÀ̽㿡¼­ ¹è¿­Àº ¸®½ºÆ®¸¦ »ç¿ëÇÏ¿© Èä³»³»¾îÁö¸ç Tcl¿¡¼­´Â »çÀüÀ» »ç¿ëÇÏ¿© ±¸ÇöµÈ´Ù.

    º£ÀÌÁ÷¿¡¼­ ¹è¿­ÀÇ »ç¿ë¿¹´Â ¾Æ·¡¿Í °°´Ù:

    DIM Myarray(20) REM Create a 20 element array
    MyArray(1) = 27
    MyArray(2) = 50
    FOR i =1 TO 5
       PRINT MyArray(i)
    NEXT i
    

    º£ÀÌÁ÷¿¡¼­´Â ÁöÇ¥°¡ 1¿¡¼­ ½ÃÀÛµÊÀ» ÁÖ¸ñÇ϶ó, ÀÌ°ÍÀº ƯÀÌÇÑ °ÍÀÌ¸ç ´ëºÎºÐÀÇ ¾ð¾î¿¡¼­´Â ÁöÇ¥°¡ 0¿¡¼­ ½ÃÀÛÇÑ´Ù. ¹è¿­¿¡ ´ëÇÑ ´Ù¸¥ 󸮹æ¹ýÀº ¾ø´Ù, ¿©·¯ºÐÀÌ ÇÒ ¼ö ÀÖ´Â °ÍÀº ±×°ÍÀ» »ý¼ºÇÏ°í, °ªÀ» ÇÒ´çÇÏ°í ÀÐ´Â°Í »ÓÀÌ´Ù.

    ½ºÅà Stack

    ·¹½ºÅä¶û¿¡¼­ Á¢½ÃµéÀÌ ½×¿©ÀÖ´Â °ÍÀ» »ý°¢ÇØ º¸¶ó. °¡°Ô Á¡¿ø Çϳª°¡ ÀÏ´ÜÀÇ ±ú²ýÇÑ Á¢½ÃµéÀ» ²À´ë±â¿¡ ³õ´Â´Ù. À̰͵éÀº Çϳª¾¿ ¼Õ´Ôµé¿¡ ÀÇÇؼ­ Á¦°ÅµÈ´Ù. ½ºÅà °¡Àå ¾Æ·¡¿¡ ÀÖ´Â Á¢½Ã°¡ °¡Àå ³ªÁß¿¡ »ç¿ëµÈ´Ù.(±×¸®°í ±×°Í¹Û¿¡ ¾øÀ¸´Ï±î!) µ¥ÀÌŸ ½ºÅÃÀº ¶È °°Àº ¹æ½ÄÀ¸·Î ÀÛµ¿ÇÑ´Ù:
    ¿©·¯ºÐÀº ÇϳªÀÇ Ç׸ñÀ» ½ºÅÃÀ¸·Î ³Ö°Å³ª Çϳª¸¦ ²¨³½´Ù. ²¨³»¾îÁø Ç׸ñÀº Ç×»ó °¡Àå ¸¶Áö¸·¿¡ ³Ö¾îÁø °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ½ºÅÃÀÇ ¼Ó¼ºÀ» ÀÏÄþî ÈÄÀÔ¼±ÃâLast In First Out ȤÀº ¸®Æ÷ LIFO¶ó°í ºÎ¸¥´Ù. ½ºÅÃÀÇ À¯¿ëÇÑ ¼Ó¼®Áß Çϳª´Â ¸®½ºÆ®¸¦ ½ºÅþȿ¡ Áý¾î ³Ö°í ´Ù½Ã ¹ÛÀ¸·Î ²¨³¿À¸·Î½á ¿©·¯ºÐÀÌ Ç׸ñÀÇ ¸®½ºÆ®¸¦ µÚÁýÀ» ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù. °á°ú´Â óÀ½ ¸®½ºÆ®ÀÇ ¹Ý´ë°¡ µÉ °ÍÀÌ´Ù. ½ºÅÃÀº ÆÄÀ̽ã, Tcl ȤÀº BASIC ¿¡ ³»ÀåµÇÁö ¾Ê¾Ò´Ù. ¿©·¯ºÐÀº ±×·± ÇàÀ§¸¦ ±¸ÇöÇÏ·Á¸é ¾à°£ÀÇ ÇÁ·Î±×·¥Äڵ带 ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ¸®½ºÆ®°¡ º¸Åë °¡Àå ÁÁÀº Ãâ¹ßÁ¡Àε¥ ¿Ö³ÄÇÏ¸é ½ºÅðú ¸¶Âù°¡Áö·Î ±×µéµµ ÇÊ¿äÇÒ¶§ ´Ã¾î³¯ ¼ö Àֱ⠶§¹®ÀÌ´Ù.

    ¹é Bag

    ¹éÀº ¾î¶² ƯÁ¤ÇÑ ¼ø¼­¸¦ °¡ÁöÁö ¾Ê´Â Ç׸ñµéÀÇ ÁýÇÕÀÌ´Ù. ±×¸®°í ±×°ÍÀº Áߺ¹µµ Æ÷ÇÔÇÒ ¼ö ÀÖ´Ù. ¹éÀº º¸Åë ¿©·¯ºÐÀÌ Ç׸ñµéÀ» ã°í Á¦°ÅÇÏ°í ´õÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â ¿¬»êÀÚ¸¦ °¡Áø´Ù. ÆÄÀ̽ã°ú ƼŬ¿¡¼­ ¹éÀº ´Ü¼øÈ÷ ¸®½ºÆ®ÀÌ´Ù. º£ÀÌÁ÷¿¡¼­´Â ¿©·¯ºÐÀº °Å´ëÇÑ ¹è¿­·Î¼­ ¹éÀ» ±¸ÇöÇØ¾ß ÇÑ´Ù.

    ¼¼Æ® Set

    ¼¼Æ®´Â °¢ Ç׸ñ¿¡ ÇÑ°³ÀÇ °ª¸¸À» ÀúÀåÇϴ Ư¼ºÀ» Áö´Ñ´Ù. ¿©·¯ºÐÀº º¸Åë Ç׸ñÀÌ ¼¼Æ®¿¡ (ȸ¿øÀ¸·Î¼­) Á¸ÀçÇÏ´ÂÁö Á¡°ËÇØ º¼¼ö ÀÖ´Ù. Ç׸ñÀ» ´õÇÏ°í, Á¦°ÅÇÏ°í, °Ë»öÇ϶ó. µÎ °³ÀÇ ¼¼Æ®¸¦ ¿©·¯°¡Áö ¹æ½ÄÀ¸·Î ¼öÇп¡¼­ÀÇ ÁýÇÕÀÌ·Ð(¿¹¸¦ µé¾î °ö, ÇÕ µîµî)¿¡ ´ëÀÀÇÏ¿© °áÇÕ½ÃÄѶó. ¿ì¸®ÀÇ ¿¹Á¦ ¾ð¾îµé Áß ¾î¶² °Íµµ ¼¼Æ®¸¦ Á÷Á¢ÀûÀ¸·Î ±¸ÇöÇÏÁö´Â ¾Ê¾ÒÁö¸¸, ÆÄÀ̽ã°ú ƼŬ¿¡¼­´Â ³»ÀåµÈ »çÀüÇüÀ» »ç¿ëÇÏ¿© ½±°Ô ±¸ÇöµÉ ¼ö ÀÖ´Ù.

    ť Queue

    Å¥´Â ½ºÅðú ºñ½ÁÇÏÁö¸¸ Å¥¿¡ ¸ÕÀú µé¾î°£ Ç׸ñÀÌ ¶ÇÇÑ Ã³À½À¸·Î ³ª¿Â´Ù´Â Á¡ÀÌ ´Ù¸£´Ù. ÀÌ°ÍÀº ¼±ÀÔ¼±Ãâ First In First Out ȤÀº ÇÇÆ÷ FIFOÇàÅ·Π¾Ë·ÁÁ® ÀÖ´Ù.

    ´Ù¸¥ ÁýÇÕÇüµµ ¾ó¸¶µçÁö ÀÖÁö¸¸, À̰͵éÀÌ ¿©·¯ºÐÀÌ ¸¶ÁÖÄ¡°Ô µÉ Áß¿äÇÑ °ÍµéÀÌ´Ù. (»ç½Ç ¿ì¸®´Â ÀÌ À¥Æ©ÅÍ¿¡¼­ ÀÌ·¯ÇÑ °Íµé Áß ¾à°£¸¸À» ´Ù·ç°Ô µÉ °ÍÀÌ´Ù!)

    ÆÄÀÏ Files

    ÄÄÇ»ÅÍ »ç¿ëÀڷμ­ ¿©·¯ºÐÀº ÆÄÀÏ¿¡ °üÇÑ ¸ðµç °ÍÀ» ¾È´Ù - ÄÄÇ»ÅÍ·Î ¿ì¸®°¡ ´Ù·ç´Â °ÍµéÀÇ °ÅÀÇ ±âº»Åä´ëÀÌ´Ù. ±×·¸´Ù¸é, ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î°¡ µ¥ÀÌŸÀÇ Æ¯º°ÇÑ ÆÄÀÏfileÇüÀ» Á¦°øÇÑ´Ù°í Çؼ­ ÀüÇô ³î¶öÀÏÀÌ ¾Æ´Ï´Ù. ±×·¸Áö¸¸ ÆÄÀÏ°ú ±×°ÍµéÀ» ó¸®ÇÏ´Â ¹æ¹ýÀº ³Ê¹«³ª Áß¿äÇؼ­ ³ª´Â ±×°Íµé¿¡ ´ëÇÏ¿© ³íÀÇ ÇÏ´Â °ÍÀ» µ¶¸³ÀûÀÎ ÀåÀ¸·Î ´Ù·ç°Ô µÉ ¶§±îÁö ÀÌÈÄ·Î ¿¬±âÇÏ·Á°í ÇÑ´Ù.

    ³¯Â¥¿Í ½Ã°£ Dates and Times

    ³¯Â¥¿Í ½Ã°£Àº ÇÁ·Î±×·¡¹Ö¿¡¼­ ¶§¶§·Î Ưº°È÷ ºÀÇåµÈ ÇüÅ·ΠÁÖ¾îÁø´Ù. ´Ù¸¥ ¶§¿¡´Â ±×°ÍµéÀº ´Ü¼øÈ÷ Ä¿´Ù¶õ ¼ýÀÚ·Î (ÀüÇüÀûÀ¸·Î ÀÓÀÇÀÇ ³¯Â¥/½Ã°£À» ÃÊ´ÜÀ§·Î) ³ªÅ¸³»¾îÁø´Ù. ´Ù¸¥ °æ¿ì¿¡´Â ³¯Â¥ÇüÀº ´ÙÀ½¼½¼Ç¿¡¼­ ¼³¸íµÇ´Â ¹Ù¿Í °°ÀÌ º¹ÇÕÇüÀ¸·Î ¾Ë·ÁÁ® ÀÖ´Ù. ÀÌ°ÍÀº º¸Åë ¿ù, ÀÏ, ½Ã°£ µîÀ» ÃßÃâÇϱ⠽±°Ô ÇØÁØ´Ù.

    º¹ÇÕÇü/»ç¿ëÀÚ Á¤ÀÇ Complex/User Defined

    ¾î¶² ¶§¿¡´Â À§¿¡ ±â¼úÇÑ ±âº»ÀûÀÎ ÇüµéÀÌ ÁýÇÕÇüÀ¸·Î °áÇյǾúÀ» ¶§Á¶Â÷µµ ºÎÀû´çÇÏ´Ù. ¶§·Î ¿ì¸®´Â ¾à°£ÀÇ µ¥ÀÌŸ Á¶°¢µéÀ» ±×·ìÁö¾î¼­ ±×°ÍÀ» ÇϳªÀÇ Ç׸ñÀ¸·Î ´Ù·ç±â¸¦ ¿øÇÑ´Ù. ÁÖ¼Ò¸¦ ±â¼úÇÏ´Â °ÍÀÌ Àû´çÇÑ ¿¹Á¦°¡ µÉ ¼ö ÀÖ°Ú´Ù:
    Áö¹ø, µµ·Î¹øÈ£¿Í µµ½Ã. ¸¶Áö¸·À¸·Î ¿ìÆí¹øÈ£.

    ´ëºÎºÐÀÇ ¾ð¾î¿¡¼­ ¿©·¯ºÐÀº ±×·¯ÇÑ Á¤º¸¸¦ ·¹ÄÚµårecord ȤÀº ±¸Á¶ structureÀÇ ÇüÅ·ΠÇϳª·Î ±×·ìÁöÀ»¼ö ÀÖ´Ù.

    º£ÀÌÁ÷¿¡¼­ ±×·¯ÇÑ ·¹ÄÚµå Á¤ÀÇ´Â ´ÙÀ½°ú °°´Ù:

    Type Address
         HsNumber AS INTEGER
         Street AS STRING * 20
         Town AS STRING * 15
         ZipCode AS STRING * 7
    End Type
    

    STRINGµÚÀÇ ¼ýÀÚ´Â ´Ü¼øÈ÷ ±× ¹®ÀÚ¿­ÀÇ ÃÖ´ë ±æÀÌÀÌ´Ù.

    ÆÄÀ̽㿡¼­ ±×°ÍÀº ¾à°£ ´Ù¸£´Ù:

    >>>class Address:
    ...   def __init__(self, Hs, St, Town, Zip):
    ...     self.HsNumber = Hs
    ...     self.Street = St
    ...     self.Town = Town
    ...     self.ZipCode = Zip
    ...
    

    ÀÌ°ÍÀº ¾à°£ ¹¦ÇÏ°Ô º¸ÀÌ°ÚÁö¸¸ ±×·¯³ª °ÆÁ¤ÇÏÁö ¸¶¶ó. def __init__(...) ±×¸®°í selfÀÌ ¹«¾ùÀ» ÀǹÌÇÏ´ÂÁö´Â °´Ã¼ÁöÇâ¿¡ °üÇÑ ¼½¼Ç¿¡¼­ ¼³¸íÇÏ°Ú´Ù. ¾î¶² À̵éÀº ÀÌ·¯ÇÑ ¿¹Á¦¸¦ ÆÄÀ̽ãÀÇ ÇÁ·ÒÇÁÆ®¿¡¼­ ŸÀÌÇÁÇϴµ¥ ¹®Á¦°¡ ÀÖÀ»¼ö ÀÖ´Ù. ÀÌ ÀåÀÇ ¸¶Áö¸·¿¡ ¿©·¯ºÐÀº ´õ¿í ¼³¸íÀÌ ÀßµÈ ¹Ú½º¸¦ º¸°Ô µÉ °ÍÀÌ´Ù, ±×·¯³ª ¿©·¯ºÐÀº ´ÜÁö ±â´Ù·Á¼­ ¿øÇÑ´Ù¸é ÀÌ °­Á¿¡¼­ ÀÌÈÄ¿¡ ÀüüÀûÀÎ À̾߱⸦ µè°Ô µÉ °ÍÀÌ´Ù. ¿©·¯ºÐÀÌ ÆÄÀ̽㿡 ÀÌ°ÍÀ» ŸÀÌÇÁÇØ ³ÖÀ¸·Á°í ÇÑ´Ù¸é ¿©·¯ºÐÀÌ µé¿©¾²±â¸¦ º¸¿©Áö´Â ¹Ù¿Í °°ÀÌ º¹»çÇß´ÂÁö¸¦ È®ÀÎÇ϶ó. ¿©·¯ºÐÀÌ ³ªÁß¿¡ º¸°Ô µÇµíÀÌ ÆÄÀ̽ãÀº µé¿©¾²±â ¼öÁØ¿¡ ´ëÇÏ¿© ´ë´ÜÈ÷ ¹Î°¨ÇÏ´Ù.

    ³»°¡ ¿©·¯ºÐÀÌ ÀÌ ¸ðµç °Íµé¿¡¼­ ÀÎÁöÇϱ⸦ ¿øÇÏ´Â °¡Àå Áß¿äÇÑ °ÍÀº ¿ì¸®°¡ ¸î°³ÀÇ Á¶°¢ÀÇ µ¥ÀÌŸ¸¦ ÇϳªÀÇ ±¸Á¶·Î ¸ð¾Ò´Ù´Â °ÍÀÌ´Ù.

    º¹ÇÕÇü¿¡ Á¢±ÙÇϱâ

    ¿ì¸®´Â º¹ÇÕµ¥ÀÌŸÇüÀ» º¯¼ö¿¡ ¿ª½Ã ÇÒ´çÇÒ ¼ö ÀÖ´Ù, ±×·¯³ª ±× ÇüÀÇ °³º°ÀûÀÎ Çʵå fields¿¡ Á¢±ÙÇϱâ À§Çؼ­´Â ¿ì¸®´Â ¾î¶² Ưº°ÇÑ Á¢±Ù ¸ÞÄ«´ÏÁòÀ» »ç¿ëÇØ¾ß ÇÑ´Ù (±×°ÍÀº ±× ¾ð¾î¿¡ ÀÇÇؼ­ Á¤ÀǵȴÙ.) º¸Åë ÀÌ°ÍÀº µµÆ®(Á¡)ÀÌ´Ù.

    À§¿¡ ¿ì¸®°¡ Á¤ÀÇÇÑ ÁÖ¼ÒÇüÀÇ °æ¿ì¸¦ °í·ÁÇØ º»´Ù¸é ¿ì¸®´Â º£ÀÌÁ÷¿¡¼­ ÀÌ·¸°Ô ÇÒ °ÍÀÌ´Ù:

    DIM Addr AS Address
    Addr.HsNumber = 7
    Addr.Street = "High St"
    Addr.Town = "Anytown"
    Addr.ZipCode = "123 456"
    PRINT Addr.HsNumber," ",Addr.Street
    

    ¿©·¯ºÐÀÌ ÀÌ¹Ì Å¬·¡½ºÁ¤ÀǸ¦ À§¿Í °°ÀÌ Å¸ÀÌÇÁÇØ ³Ö¾ú´Ù°í °¡Á¤ÇÏ°í, ±×¸®°í ÆÄÀ̽㿡¼­´Â ´ÙÀ½°ú °°´Ù:

    Addr = Address(7,"High St","Anytown","123 456")
    print Addr.HsNumber, Addr.Street
    

    ±×°ÍÀº ¿ì¸®ÀÇ AddressÇüÀÇ ½Çü¸¦ »ý¼ºÇÑ´Ù ±×¸®°í ±×°ÍÀ» º¯¼ö addr¿¡ ÇÒ´çÇÑ´Ù. ¿ì¸®´Â ±×·¯¸é »õ·ÎÀÌ »ý¼ºµÈ ½ÇüÀÇ Hs_Number ¿Í StreetÀÇ Çʵ带 Á¡ ¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© Ãâ·ÂÇÒ ¼ö ÀÖ´Ù. ¹°·Ð, ¿©·¯ºÐÀº »õ·Î¿î ÁÖ¼ÒÇüÀÇ º¯¼öµéÀ» ¿©·¯°³ ¸¸µé¾î ³¾ ¼öµµ ÀÖ´Ù. °¢°¢ÀÇ º¯¼öµéÀº ÀڽŸ¸ÀÇ °³º°ÀûÀÎ Áö¹ø°ú, µµ·Î¹øÈ£ µîµîÀ» °¡Áø´Ù.

    Tcl ÀÇ ¹æ¹ý

    ƼŬ¿¡¼­ º¹ÇÕÇü¿¡ ´ëÇØ °¡Àå ºñ½ÁÇÏ°Ô Á¢±ÙÇÏ´Â °ÍÀº ´Ü¼øÈ÷ Çʵ带 ¸®½ºÆ®·Î ÀúÀåÇÏ´Â °ÍÀÌ´Ù. ¿©·¯ºÐÀº ÀÏ·ÃÀÇ ÇʵåµéÀ» ´Ù½Ã ÃßÃâÇÒ¼ö ÀÖ±â À§ÇÏ¿© ±â¾ïÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. Çʵå¼ýÀÚ¸¦ º¯¼ö¿¡ ÇÒ´çÇÔÀ¸·Î½á, ÀÌ°ÍÀº ¾à°£ °£¼ÒÈ­ µÉ ¼ö ÀÖ´Ù. ÀÌ·±½ÄÀ¸·Î Àü¼úÇÑ ¿¹Á¦´Â ´ÙÀ½°ú °°ÀÌ º¸ÀÏ °ÍÀÌ´Ù:

    set Hs_num 0
    set Street 1
    set Town 2
    set zip 3
    set addr [list 7 "High St" "Anytown" "123 456"]
    puts [format "%s %s" [lindex $addr $Hs_num] [lindex $addr $Street]]
    

    ƼŬÀÇ Çü½ÄÈ­ ¹®ÀÚ¿­ÀÇ »ç¿ë°ú '[]'·Î ³»Æ÷µÈ ¼¼Æ®¸¦ ÁÖ¸ñÇ϶ó.

    »ç¿ëÀÚ Á¤ÀÇ ¿¬»êÀÚ

    »ç¿ëÀÚ Á¤ÀÇÇüÀº, ¾î¶² ¾ð¾î¿¡¼­´Â, 󸮹æ¹ýµµ Á¤ÀǵȴÙ. ÀÌ°ÍÀº °´Ã¼ ÁöÇâÇü ÇÁ·Î±×·¡¹Ö object oriented programmingÀ̶ó°í ¾Ë·ÁÁø °ÍÀÇ ±âº»Åä´ëÀÌ´Ù. ¿ì¸®´Â ÀÌ ÁÖÁ¦¿¡ °üÇÏ¿© Àüü¼½¼ÇÀ» ÈÄ¿¡ ÇÒ¾Ö ÇÏ¿´´Ù. ±×·¯³ª º»ÁúÀûÀ¸·Î °´Ã¼´Â µ¥ÀÌŸ ¿ä¼Ò¿Í ±× µ¥ÀÌŸ¿Í °ü·ÃµÈ ¿¬»êÀÇ ÁýÇÕÀ¸·Î, ÇϳªÀÇ ´ÜÀ§·Î ½Î¿©Á® Ãë±ÞµÇ´Â °ÍÀÌ´Ù. ÆÄÀ̽ãÀº °´Ã¼¸¦ Ç¥ÁضóÀ̺귯¸® ¸ðµâ¿¡¼­ ±¤¹üÀ§ÇÏ°Ô »ç¿ëÇÏ¸ç ¶ÇÇÑ ¿ì¸®°¡ ÇÁ·Î±×·¡¸Ó·Î¼­ ¿ì¸® ÀڽŸ¸ÀÇ °´Ã¼ÇüÀ» ¸¸µé¼ö ÀÖµµ·Ï ÇØÁØ´Ù.

    °´Ã¼ ¿¬»êÀº »ç¿ëÀÚ Á¤ÀÇ ÇüÀÇ µ¥ÀÌŸ ±¸¼º¿ø¿¡ Á¢±ÙÇÏ´Â °Í°ú °°Àº ¹æ½ÄÀ¸·Î, Á¡ ¿¬»êÀÚ¸¦ ÅëÇÏ¿© Á¢±ÙµÈ´Ù. ±×·¯³ª ´Ù¸¥¸éÀ¸·Î´Â ÇÔ¼ö¿Íµµ ºñ½ÁÇÏ´Ù. ÀÌ·¯ÇÑ Æ¯º°ÇÑ ÇÔ¼öµéÀº ¸Þ½îµåmethods¶ó°í ºÒ¸®¿î´Ù. ¿ì¸®´Â ÀÌ¹Ì ÀÌ°ÍÀ» ¸®½ºÆ®ÀÇ append()¿¬»ê¿¡¼­ º¸¾Ò´Ù. ±×°ÍÀ» »ç¿ëÇϱâ À§Çؼ­ ¿ì¸®´Â º¯¼öÀ̸§À§¿¡ ÇÔ¼öÈ£ÃâÀ» °É¾î¾ß¸¸ ÇÑ´Ù´Â °ÍÀ» »ó±âÇ϶ó:

    >>> listObject = []    # an empty list
    >>> listObject.append(42)   # a method call of the list object
    >>> print listObject
    [42]
    

    Ŭ·¡½º¶ó°í ¾Ë·ÁÁø, °´Ã¼ÇüÀÌ ÇϳªÀÇ ¸ðµâ¿¡ Á¦°øµÇ¾î ÀÖ´Ù¸é ¿ì¸®´Â ±× ¸ðµâÀ» (Àü¿¡ sys¸ðµâ¿¡ Çß´ø °Íó·³) ¼öÀÔÇؾßÇÑ´Ù. ±×¸®°í´Â ±× °´Ã¼ÇüÀ» ±× ¸ðµâÀÇ À̸§À¸·Î Á¢µÎ»ç¸¦ »ï¾Æ¼­ ½Çü¸¦ »ý¼ºÇÏ°í ¿ì¸®´Â ±×°ÍÀ» º¯¼ö¿¡ ÇÒ´çÇÒ ¼ö ÀÖ´Ù. ±×·¯¸é ¿ì¸®´Â ¸ðµâÀÇ À̸§À» »ç¿ëÇÏÁö ¾Ê°íµµ ±× º¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

    ¿ì¸®´Â ÀÌ°ÍÀ» °¡»óÀûÀÎ ¸ðµâ '°í±â'¸¦ °íÂûÇÔÀ¸·Î½á ¼³¸íÇÏ·Á ÇÑ´Ù. ±× ¸ðµâÀº ½ºÆÔŬ·¡½º¸¦ Á¦°øÇÑ´Ù. ¿ì¸®´Â ±× ¸ðµâÀ» ¼öÀÔÇÏ°í, ½ºÆÔÀÇ ½Çü¸¦ »ý¼ºÇÏ°í ±×¸®°í µ¥ÀÌŸ¿Í ¿¬»ê¿¡ ´ÙÀ½°ú °°ÀÌ Á¢±ÙÇÑ´Ù:

    >>> import meat
    >>> mySpam = meat.Spam()  # create an instance, use module name
    >>> mySpam.slice()        # use a Spam operation
    >>> print mySpam.ingredients  # access Spam data
    {Pork:40%, Ham:45%, Fat:15%}
    

    ½Çü¸¦ »ý¼ºÇÒ ÇÊ¿ä°¡ ÀÖ´Ù´Â °ÍÀ» »©°í´Â, ¸ðµâ¾È¿¡ Á¦°øµÈ °´Ã¼¸¦ »ç¿ëÇÏ´Â °Í°ú ¸ðµâ¾È¿¡¼­ ¹ß°ßµÇ´Â ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â °Í°ú´Â ½ÇÁ¦ÀûÀÎ Â÷ÀÌ°¡ ¾ø´Ù. °´Ã¼ÀÇ À̸§À» ´Ü¼øÇÏ°Ô ÇÔ²² ±×·ìÁö¾îÁø °ü·ÃµÈ ÇÔ¼ö¿Í º¯¼öµéÀ» À¯ÁöÇÏ´Â ¶óº§À̶ó°í »ý°¢Çغ¸¶ó.

    ±×°ÍÀ» »ìÆ캸´Â ¶Ç ´Ù¸¥ ¹æ¹ýÀº °´Ã¼´Â ½ÇÁ¦ ¼¼°èÀÇ »ç¹°µéÀ» ³ªÅ¸³»´Â °ÍÀÌ´Ù, ¿ì¸®´Â ÇÁ·Î±×·¡¸Ó·Î¼­ ±×°Í¿¡ ´ëÇÏ¿© 󸮸¦ ÇÒ¼ö°¡ ÀÖ´Ù. ÀÌ·¯ÇÑ °üÁ¡Àº ÇÁ·Î±×·¥¿¡¼­ °´Ã¼¶ó´Â ¿ø·¡ÀÇ ¾ÆÀ̵ð¾î°¡ ½ÇÁ¦ ¼¼°èÀÇ »óȲÀ» ÄÄÇ»ÅÍ·Î ¸ð»çÇÏ·Á´Â °ÍÀ¸·ÎºÎÅÍ ±â¿øÇß´Ù´Â °ÍÀÌ´Ù.

    Å¥º£ÀÌÁ÷À̳ª ƼŬ ¸ðµÎ º¹ÇÕÇü¿¡´Ù ¿¬»êÀÚ¸¦ ´õÇÏ´Â ´É·ÂÀ» Á¦°øÇÏÁö ¾Ê´Â´Ù. ±×·¸Áö¸¸ ƼŬ¿¡´Â ¿¡µå¿Â ¶óÀ̺귯¸®°¡ À־ ÀÌ°ÍÀ» °¡´ÉÇÏ°Ô ÇÏ¸ç ´õ¿í Çö´ëÈ­µÈ ºñÁê¾ó º£ÀÌÁ÷ º¯Á¾Àº ÀÌ°ÍÀ» ¼öÇàÇÑ´Ù.

    ÆÄÀ̽ãÀÇ Æ¯º°ÇÑ ¿¬»êÀÚ

    ÀÌ À¥Æ©ÅÍ¿¡¼­ ³ªÀÇ ±âº»ÀûÀÎ ¸ñÀûÀº ¿©·¯ºÐ¿¡°Ô ÇÁ·Î±×·¥ÇÏ´Â ¹ýÀ» °¡¸£Ä¡´Â °ÍÀÌ°í ³»°¡ À¥Æ©ÅÍ¿¡¼­ ÆÄÀ̽ãÀ» »ç¿ëÇÑ´Ù°í ÇÒÁö¶óµµ °Å±â¿¡´Â Ưº°ÇÑ ÀÌÀ¯°¡ ÀÖ´Â °ÍÀº ¾Æ´Ï¸ç, ÀÌ°ÍÀ» ÀÐ°í¼­, ¿©·¯ºÐÀº ¹ÛÀ¸·Î ³ª°¡¼­ ´Ù¸¥ ¾ð¾î¸¦ ÀÐ°í ´ë½Å¿¡ ±×°ÍÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ½ÇÁ¦·Î ±×°ÍÀÌ ¹Ù·Î ³»°¡ ¿©·¯ºÐÀÌ ÇØÁֱ⸦ ¹Ù¶ó´Â °ÍÀε¥ ¾î¶² ¾ð¾îµµ, ÆÄÀ̽ã±îÁöµµ, ¸ðµç °ÍÀ» ÇÒ¼ö´Â ¾ø±â ¶§¹®ÀÌ´Ù. ±×·¯ÇÑ ¸ñÀû¶§¹®¿¡ ³ª´Â ÆÄÀ̽ãÀÇ ¸ðµç »ç¾çÀ» °¡¸£Ä¡Áö ¾Ê°í ´Ù¸¥ ¾ð¾î¿¡¼­µµ ¿ª½Ã ÀϹÝÀûÀ¸·Î ¹ß°ßµÇ´Â °Íµé¿¡ ´ëÇؼ­ ÁýÁßÀûÀ¸·Î ´Ù·ê °ÍÀÌ´Ù. °á°úÀûÀ¸·Î ÆÄÀ̽ãÀÇ ¾î¶² Ưº°ÇÑ »ç¾çµé¿¡ ´ëÇؼ­´Â, ±×°ÍµéÀÌ ´ë´ÜÈ÷ °­·ÂÇÔ¿¡µµ ºÒ±¸ÇÏ°í ³ª´Â ÀüÇô ±×°ÍµéÀ» ¼³¸íÇÏÁö ¾ÊÀ»°ÍÀÌ¸ç ±×°Í¿¡´Â Ưº°ÇÑ ¿¬»êÀÚµµ Æ÷ÇÔÇÑ´Ù. ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î´Â ´Ù¸¥ ¾ð¾î¿¡¼­´Â Áö¿øÇÏÁö ¾ÊÀ¸³ª ÀÚ½ÅÀº Áö¿øÇϴ ó¸®¹æ¹ýµéÀ» °¡Áø´Ù. »õ·Î¿î ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ ÃâÇö½ÃÅ°´Â °ÍÀº ¹Ù·Î ÀÌ·¯ÇÑ 'µ¶Æ¯ÇÑ' ¿¬»êÀÚµéÀÌ´Ù. ±×¸®°í ±×°ÍÀº ºÐ¸íÈ÷ ±× ¾ð¾î°¡ ¾ó¸¶³ª ¹ø¼ºÇϴ°¡¸¦ °áÁ¤ÇÏ´Â Áß¿äÇÑ ¿äÀÎÀÌ´Ù.

    ¿¹¸¦ µé¾î ÆÄÀ̽ãÀº ¸®½ºÆ® ½ä±â( spam[X:Y] )¿Í ÅÍÇÃÇÒ´ç( X, Y = 12, 34 )µî°ú °°Àº »ó´ëÀûÀ¸·Î Èñ±ÍÇÑ ¿¬»êµéÀ» Áö¿øÇÑ´Ù. ÆÄÀ̽ãÀº ¶ÇÇÑ ÁýÇÕÀÇ ¸ðµç ±¸¼º¿øµé¿¡ ´ëÇÏ¿© map()ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© 󸮸¦ ¼öÇàÇÏ´Â ´É·ÂÀ» °¡Áø´Ù. ¸¹°í ¸¹Àº ±â´ÉÀÌ À־ ¶§·Î´Â "ÆÄÀ̽ãÀº ¹åµ¥¸®¸¦ ³»ÀåÇÏ°í ³ªÅ¸³­´Ù"¶ó°í ¸»ÇÏ¿©Áö°ï ÇÑ´Ù. ÀÌ·¯ÇÑ ÆÄÀ̽ãÀÇ Æ¯º°ÇÑ ¿¬»êµéÀÌ ¾î¶»°Ô ÀÛµ¿ÇÏ´ÂÁö¿¡ ´ëÇÑ ¼¼ºÎ»çÇ×À» º¸·Á¸é ¿©·¯ºÐÀº ÆÄÀ̽㠹®¼­¸¦ ÂüÁ¶ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù.

    ¸¶Áö¸·À¸·Î, ÁöÀûÇÒ ¸¸ÇÑ »çÇ×Àº ³»°¡ ±× »ç¾çµéÀÌ ÆÄÀ̽ãÀÇ Æ¯º°ÇÑ °ÍÀ̶ó°í ¸»ÇÒÁö¶óµµ ±×°ÍÀÌ ´Ù¸¥ ¾ð¾î¿¡¼­´Â ¹ß°ßµÇÁö ¾Ê´Â´Ù´Â °ÍÀ» ¶æÇÏ´Â °ÍÀÌ ¾Æ´Ï°í, ¿ÀÈ÷·Á ¸ðµç ¾ð¾î¿¡¼­ ÀüºÎ ´Ù ¹ß°ßµÇ´Â °ÍÀÌ ¾Æ´Ï¶ó°í ¸»ÇÏ´Â °ÍÀÌ´Ù. ¿ì¸®°¡ ÁÖ·Î ´Ù·é ¿¬»êÀÚµéÀº °ÅÀÇ ¸ðµç Çö´ëÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼­´Â ¾î¶² ÇüÅ·εç ÀϹÝÀûÀ¸·Î »ç¿ë°¡´ÉÇÏ´Ù.

    ÀÌ°ÍÀ¸·Î ¿ì¸®´Â ÇÁ·Î±×·¡¹ÖÀÇ ¿ø Àç·áµéÀ» »ìÆ캸¾Ò´Ù, Å×Å©´ÐÀ̶ó´Â ´õ¿í ´õ Èï¹Ì·Î¿î ÁÖÁ¦·Î Áø±ºÇغ¸ÀÚ ±×¸®°í ¾î¶»°Ô ¿ì¸®°¡ ÀÌ·¯ÇÑ Àç·áµéÀ» ÀÛµ¿ÇÏ°Ô ÇÒ¼ö ÀÖ´ÂÁö ¾Ë¾Æº¸ÀÚ.

    ÁÖ¼Ò·Ï ¿¹Á¦¿¡ °üÇÑ ´õ¿í »ó¼¼ÇÑ Á¤º¸

    ³»°¡ ÀÌÀü¿¡ ¾ð±ÞÇÑ ¹Ù¿Í °°ÀÌ, ÀÌ ¿¹Á¦ÀÇ ¼¼ºÎ»çÇ×Àº ÈÄ¿¡ ¼³¸íµÇ°ÚÁö¸¸, ¾î¶² µ¶ÀÚµéÀº ÀÌ ¿¹Á¦¸¦ ÀÛµ¿½ÃÅ°´Âµ¥ ¾î·Á¿òÀ» °ÞÀ» ¼öµµ ÀÖ´Ù. ÀÌ ¸Þ¸ðÀåÀº ¶óÀÎ ¶óÀδÜÀ§·Î ±× ÆÄÀ̽ã Äڵ带 ¼³¸íÇØÁØ´Ù:

    ÀÌ ¿¹Á¦ÀÇ ¿ÏÀüÇÑ ÄÚµå´Â ´ÙÀ½°ú °°ÀÌ º¸ÀÏ°ÍÀÌ´Ù:

    >>> class Address:
    ...   def __init__(self, Hs, St, Town, Zip):
    ...     self.Hs_Number = Hs
    ...     self.Street = St
    ...     self.Town = Town
    ...     self.Zip_Code = Zip
    ...
    >>> Addr = Address(7,"High St","Anytown","123 456")
    >>> print Addr.Hs_Number, Addr.Street
    

    ¿©±â¿¡ ±× ¼³¸íÀÌ ÀÖ´Ù:

    >>> class Address:
    

    class ¼­¼ú¹®Àº ÆÄÀ̽㿡°Ô ÀÌ°æ¿ì¿¡´Â Address¶ó°í ºÒ¸®¿ì´Â, »õ·Î¿î ÇüÀ» ¿ì¸®´Â Á¤ÀÇÇÏ·Á°í ÇÑ´Ù´Â °ÍÀ» ¸»ÇØÁØ´Ù. ½ÖÁ¡(:)Àº µÚ¿¡ µû¸£´Â, µé¿©¾²±âµÈ ¾î¶°ÇÑ ¶óÀεµ ±× Ŭ·¡½ºÀÇ Á¤ÀǺκÐÀÌ µÉ °ÍÀ̶ó´Â °ÍÀ» Áö½ÃÇÑ´Ù. Á¤ÀÇ´Â ´ÙÀ½ÀÇ µé¿©¾²±â µÇÁö ¾ÊÀº ¶óÀο¡¼­ ³¡³¯ °ÍÀÌ´Ù. ¿©·¯ºÐÀÌ IDLEÀ» »ç¿ëÇÑ´Ù¸é ¿©·¯ºÐÀº ±× ¿¡µðÅÍ°¡ ´ÙÀ½ÀÇ ¶óÀÎÀ» ¿©·¯ºÐÀ» À§ÇØ µé¿©¾²±â ÇØÁشٴ °ÍÀ» ¹ß°ßÇÒ °ÍÀÌ´Ù. ¸¸¾à µµ½ºÃ¢À¸·Î ¸í·É¾î ¶óÀÎ ÆÄÀ̽ã ÇÁ·ÒÇÁÆ®¿¡¼­ ÀÛ¾÷ÇÑ´Ù¸é ±×·¯¸é, ¿©·¯ºÐÀº º¸¿©Áö´Â ¹Ù¿Í °°ÀÌ ¶óÀεéÀ» ¼öµ¿À¸·Î µé¿©½áÁÙ ÇÊ¿ä°¡ ÀÖÀ» °ÍÀÌ´Ù. ÆÄÀ̽ãÀº ÀÏ°ü¼º¸¸ ÀÖ´Ù¸é, ¾ó¸¶³ª ¸¹ÀÌ µé¿©¾²±â Çߴ³Ĵ »ó°üÇÏÁö ¾Ê´Â´Ù.

    ...   def __init__(self, Hs, St, Town, Zip):

    ¿ì¸®ÀÇ Å¬·¡½º ¾È¿¡ Àִ ù¹ø° Ç׸ñÀº ¸Þ½îµå Á¤ÀÇ method definition¶ó°í ¾Ë·ÁÁø °ÍÀÌ´Ù. ÀÌ ¸Þ½îµå´Â __init__¶ó°í ºÒ¸®´Âµ¥ ¿ì¸®°¡ ¿ì¸®ÀÇ »õ·Î¿î Ŭ·¡½ºÀÇ ½Çü¸¦ »ý¼ºÇÒ ¶§ ÆÄÀ̽㿡 ÀÇÇÏ¿© ¼öÇàµÇ´Â Ưº°ÇÑ ¿¬»êÀÌ´Ù. ¿ì¸®´Â ±×°ÍÀ» °£´ÜÇÏ°Ô ¾Ë¾Æº¼ °ÍÀÌ´Ù. ½ÖÁ¡Àº, Àü°ú °°ÀÌ, ´ÙÀ½ÀÇ µé¿©¾²±âµÈ ¶óÀÎÀÇ ¼¼Æ®°¡ ±× ¸Þ½îµåÀÇ ½ÇÁ¦ Á¤ÀÇ°¡ µÉ °ÍÀ̶ó´Â °ÍÀ̶ó°í ´Ü¼øÈ÷ ÆÄÀ̽㿡°Ô ¾Ë·Á ÁØ´Ù.

    ...     self.Hs_Number = Hs

    ÀÌ ¶óÀΰú ´ÙÀ½ÀÇ ¼¼ ¶óÀÎÀº, ¸ðµÎ °ªµéÀ» ¿ì¸®ÀÇ °´Ã¼ÀÇ ³»ºÎ Çʵ忡´Ù ÇÒ´çÇÑ´Ù. ±×°ÍµéÀº def ¼­¼ú¹®À¸·ÎºÎÅÍ µé¿©¾²±â µÇ¾îÁ®¼­ ÆÄÀ̽㿡°Ô ±×µéÀÌ __init__¿¬»êÀÇ ½ÇÁ¦ÀûÀÎ Á¤ÀǸ¦ ±¸¼ºÇÑ´Ù´Â °ÍÀ» ¸»ÇØÁØ´Ù. °ø¹é¶óÀÎÀº ÆÄÀ̽ã ÀÎÅÍÇÁ¸®ÅÍ¿¡°Ô Ŭ·¡½º Á¤ÀÇ°¡ ³¡³µ±â ¶§¹®¿¡ ¿ì¸®´Â >>>ÇÁ·ÒÇÁÆ®·Î ´Ù½Ã µ¹¾Æ¿Í¾ß ÇÑ´Ù´Â °ÍÀ» ¸»ÇØÁØ´Ù.

    >>> Addr = Address(7,"High St","Anytown","123 456")

    ÀÌ°ÍÀº ¿ì¸®ÀÇ AddressÇüÀÇ »õ·Î¿î ½Çü¸¦ ¸¸µé¾î ÁÖ¸ç ÆÄÀ̽ãÀº À§¿¡ Á¤ÀÇµÈ __init__ ¿¬»êÀ» »ç¿ëÇÏ¿© ¿ì¸®°¡ Á¦°øÇÑ ±× °ªÀ» ³»ºÎ Çʵ忡 ÇÒ´çÇÑ´Ù. ±× ½Çü´Â Addr º¯¼ö¿¡ ÇÒ´çµÈ´Ù. ¸¶Âù°¡Áö·Î ´Ù¸¥ ¾î¶² µ¥ÀÌŸÇüÀÇ ½Çüµµ ±×·² ¼ö ÀÖ´Ù.

    >>> print Addr.Hs_Number, Addr.Street

    ÀÌÁ¦ ¿ì¸®´Â Á¡ ¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© Á¢±ÙÇÏ¿© ³»ºÎÇʵåÀÇ °ª µÎ °³¸¦ Ãâ·ÂÇÑ´Ù.

    ³»°¡ ¾ð±ÞÇÑ ¹Ù¿Í °°ÀÌ ¿ì¸®´Â ÀÌ Áöħ¼­¿¡¼­ ³ªÁß¿¡ ´õ »ó¼¼ÇÏ°Ô ÀÌ·¯ÇÑ ¸ðµç °ÍµéÀ» ´Ù·ê °ÍÀÌ´Ù. °£Á÷ÇؾßÇÒ Áß¿äÇÑ ¿äÁ¡Àº ÆÄÀ̽ãÀ¸·Î ¿ì¸®´Â ¿ì¸® ÀڽŸ¸ÀÇ µ¥ÀÌŸ ÇüÀ» ¸¸µé¼ö ÀÖÀ¸¸ç ±×°ÍµéÀ» ³»ÀåµÈ °Íµé°ú ¸¶Âù°¡Áö·Î ¾ÆÁÖ Àß »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù.


    ±â¾ïÇؾßÇÒ ¿äÁ¡
    • µ¥ÀÌŸ´Â ¸¹Àº ÇüÀ¸·Î ³ªÅ¸³ª¸ç ¿©·¯ºÐÀÌ ¼º°øÀûÀ¸·Î ¼öÇàÇÒ¼ö ÀÖ´Â ¿¬»êÀº ¿©·¯ºÐÀÌ »ç¿ëÇÏ°í ÀÖ´Â µ¥ÀÌŸÀÇ Çü¿¡ ÀÇÁ¸ÇÑ´Ù.
    • ´Ü¼øÇÑ µ¥ÀÌŸ ÇüÀº ¹®ÀÚ¿­, ¼ýÀÚ, ºÒ¸®¾ð ȤÀº 'Áø¸®'°ªÀ» Æ÷ÇÔÇÑ´Ù.
    • º¹ÇÕ µ¥ÀÌŸ ÇüÀº ÁýÇÕ, ÆÄÀÏ, ³¯Â¥¿Í »ç¿ëÀÚ°¡ Á¤ÀÇÇÑ µ¥ÀÌŸÀÇ ÇüÀ» Æ÷ÇÔÇÑ´Ù.
    • ¸ðµç ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡´Â ¸¹Àº ¿¬»êÀÚ°¡ ÀÖ°í »õ·Î¿î ¾ð¾î¸¦ ¹è¿î´Ù´Â °ÍÀº ±× ¾ð¾îÀÇ µ¥ÀÌŸ Çü°ú ±×·¯ÇÑ Çü¿¡ »ç¿ë°¡´ÉÇÑ ¿¬»êÀڵ鿡 Àͼ÷ÇØÁö´Â °ÍÀÌ´Ù.
    • (¿¹¸¦ µé¾î µ¡¼À°°Àº) ¶È °°Àº ¿¬»êÀÚ°¡ ´Ù¸¥ Çüµé¿¡ »ç¿ë°¡´ÉÇÏÁö¸¸, ½ÉÁö¾î´Â °Ñº¸±â¿¡ °ü·ÃÀÌ ÀÖÀ»Áö¶óµµ, ±× °á°ú´Â µ¿ÀÏÇÏÁö ¾ÊÀ» ¼ö ÀÖ´Ù.

    Previous  Next  Contents


    ÀÌ À¥ÆäÀÌÁö¿¡ Áú¹®ÀÌ Àְųª Á¦¾È»çÇ×ÀÌ ÀÖÀ¸¸é ´ÙÀ½ ÁÖ¼Ò·Î ³ª¿¡°Ô ÀüÀÚ¸ÞÀÏÀ» º¸³»¶ó: agauld@crosswinds.net