๐Ÿ“š ์Šคํ„ฐ๋””/ํŒŒ์ด์ฌ ์Šคํ„ฐ๋”” ๊ฐ•์˜์ž๋ฃŒ

[2ํŒ€/๊น€๊ฐ€๋ฆผ, ์ตœ๋‹ค์˜ˆ] 2์ฐจ์‹œ ํŒŒ์ด์ฌ ์Šคํ„ฐ๋”” - ์ž๋ฃŒํ˜•

๋‹ค์˜ˆ๋ป 2023. 3. 15. 15:21

2์ฐจ์‹œ_์ž๋ฃŒํ˜•_๊ฐ•์˜์•ˆ.pdf
1.94MB
2์ฐจ์‹œ_์ž๋ฃŒํ˜•_๊ณผ์ œ.pdf
0.49MB

์ฐธ๊ณ ๋„์„œ : ๋ฐ์ดํ„ฐ ๊ณผํ•™์„ ์œ„ํ•œ ํŒŒ์ด์ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ์ตœ์ƒ์ฒ 

๋ณ€์ˆ˜์™€ ๊ฐ’

>>> professor = "Do Kyungsoo"
>>> print(professor)
Do Kyungsoo
  • professor์˜ ์ด๋ฆ„์€ Do Kyungsoo์ด๋‹ค.
  • professor๋Š” Do Kyungsoo์ด๋‹ค.
  • professor์™€ Do Kyungsoo๋Š” ๊ฐ™๋‹ค.
  • professor์— Do Kyungsoo๋ฅผ ๋„ฃ์–ด๋ผ.

→ professor๋ผ๋Š” ๋ณ€์ˆ˜์— Do Kyungsoo๋ผ๋Š” ๊ฐ’์„ ๋„ฃ์–ด๋ผ

>>> a = 7
>>> b = 5
>>> print(a+b)          # a๋ณ€์ˆ˜์— ์žˆ๋Š” ๊ฐ’๊ณผ b๋ณ€์ˆ˜์— ์žˆ๋Š” ๊ฐ’์„ ๋”ํ•ด ์ถœ๋ ฅํ•˜๋ผ
>>> print("a+b")        # "a+b"๋ผ๋Š” ๋ฌธ์ž๋ฅผ ๊ทธ๋Œ€๋กœ ํ™”๋ฉด์— ์ถœ๋ ฅํ•˜๋ผ
12
a+b

ํŒŒ์ด์ฌ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋Š” ๋”ฐ์˜ดํ‘œ ์•ˆ์˜ ๋ฌธ์ž๋ฅผ ํ•˜๋‚˜์˜ ๊ฐ’์œผ๋กœ ์ดํ•ดํ•จ

  • ํ• ๋‹น : ๋ณ€์ˆ˜์— ๊ฐ’์„ ๋„ฃ๋Š” ๊ณผ์ •

๋ณ€์ˆ˜์— ๋“ค์–ด๊ฐ€๋Š” ๊ฐ’์€ ์ปดํ“จํ„ฐ์˜ ์–ด๋Š ์œ„์น˜์— ์ €์žฅ๋ ๊นŒ?

๋ณ€์ˆ˜์™€ ๋ฉ”๋ชจ๋ฆฌ

  • ๋ณ€์ˆ˜ : ์–ด๋–ค ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ์žฅ์†Œ
  • ๋ฉ”๋ชจ๋ฆฌ : ๋ณ€์ˆ˜์— ๊ฐ’์ด ์ €์žฅ๋˜๋Š” ๊ณต๊ฐ„
  • **RAM(Random Access Memory)**์€ ํœ˜๋ฐœ์„ฑ ์„ฑ์งˆ์ด ์žˆ์–ด, ์ปดํ“จํ„ฐ ์ „์›์ด ๋“ค์–ด์™€ ์žˆ๋Š” ๋™์•ˆ์—๋งŒ ์ €์žฅ๋จ
  • ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ : ๋ณ€์ˆ˜์˜ ์ €์žฅ ์œ„์น˜

→ ๋ณ€์ˆ˜์— ๋“ค์–ด๊ฐ€๋Š” ๊ฐ’์€ ์–ด๋–ค ํŠน์ •ํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๊ฐ–๊ฒŒ ๋จ

๐Ÿ’ก ํ˜„์žฌ์˜ ์ปดํ“จํ„ฐ ๊ตฌ์กฐ๋Š” ํฐ ๋…ธ์ด๋งŒ ์•„ํ‚คํ…์ฒ˜์— ๊ธฐ๋ฐ˜์„ ๋‘ 

      ์ปดํ“จํ„ฐ๊ฐ€ ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰์‹œํ‚ฌ ๋•Œ ์‹คํ–‰ํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฐ’์„ ์ปดํ“จํ„ฐ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•˜๊ณ , ์ €์žฅ๋œ ๊ฐ’์„ ์ˆœ์ฐจ์ ์œผ๋กœ CPU๋กœ ๋ถˆ๋Ÿฌ์™€ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ์‹

 

๋ณ€์ˆ˜๋ช… ์„ ์–ธ

  • ์˜๋ฌธ ๋ฌธ์ž์™€ ์ˆซ์ž๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ
  • ๋ฌธ์ž๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์•ผ ํ•˜๋ฉฐ ์ˆซ์ž๋ถ€ํ„ฐ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†์Œ
  • _(underscore)๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Œ
  • ํŠน์ˆ˜ ๋ฌธ์ž ์‚ฌ์šฉ ๋ถˆ๊ฐ€
  • ํŒŒ์ด์ฌ ์˜ˆ์•ฝ์–ด(if, for, while, and, or ๋“ฑ) ์‚ฌ์šฉ ๋ถˆ๊ฐ€

์ž๋ฃŒํ˜•

๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„

ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•  ๋•Œ, ๋ณ€์ˆ˜์˜ ํฌ๊ธฐ๋งŒํผ ๊ณต๊ฐ„์„ ํ• ๋‹น ๋ฐ›์Œ

ex) 1KB, 10KB, 2MB

  • ๋น„ํŠธ(bit) : ์ด์ง„์ˆ˜ ํ•œ ์ž๋ฆฌ
  • 1๋ฐ”์ดํŠธ(byte) : 8๊ฐœ์˜ ๋น„ํŠธ
  • 1ํ‚ฌ๋กœ๋ฐ”์ดํŠธ(kilobyte, KB) : 1,024๋ฐ”์ดํŠธ
  • 1๋ฉ”๊ฐ€๋ฐ”์ดํŠธ(megabyte, MB) : 1,024ํ‚ฌ๋กœ๋ฐ”์ดํŠธ

๐Ÿ’ก ๋ฉ”๋ชจ๋ฆฌ๋Š” ์ „๋ฅ˜์˜ ํ๋ฆ„์„ ์ด์ง„์ˆ˜๋กœ ํ‘œํ˜„

     ์ „๋ฅ˜๊ฐ€ ํ๋ฅผ ๋•Œ : 1 , ํ๋ฅด์ง€ ์•Š์„ ๋•Œ : 0

 

๊ธฐ๋ณธ ์ž๋ฃŒํ˜•

  • ์ˆซ์žํ˜• (Number) : ์ •์ˆ˜, ์‹ค์ˆ˜, ๋ณต์†Œ์ˆ˜ ๋“ฑ์˜ ์ˆซ์žํ˜• ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋Š” ์ž๋ฃŒํ˜•
  • ๋ฌธ์žํ˜• (String) : ๋ฌธ์ž, ๋‹จ์–ด ๋“ฑ์œผ๋กœ ๊ตฌ์„ฑ๋œ ๋ฌธ์ž์—ด ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋Š” ์ž๋ฃŒํ˜• (๋”ฐ์˜ดํ‘œ ์‚ฌ์šฉ)
  • ๋ถˆ๋ฆฐํ˜• (Boolean) : True(1) ๋˜๋Š” False(0) ๋‘ ๊ฐ€์ง€ ๊ฐ’ ์ค‘ ํ•˜๋‚˜๋ฅผ ๊ฐ€์ง€๋Š” ์ž๋ฃŒํ˜•

๐Ÿ’ก ๋™์  ํƒ€์ดํ•‘

  • ๋ณ€์ˆ˜์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•˜๋Š” ํ–‰์œ„๊ฐ€ ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์‹œ์ ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์•„๋‹Œ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ํŒ๋‹จ
  • ํŒŒ์ด์ฌ ์–ธ์–ด๊ฐ€ ๋™์ ์œผ๋กœ ์ž๋ฃŒํ˜•์„ ๊ฒฐ์ • 
# ์‹ค์ˆ˜ํ˜•
>>> a = 1
>>> b = 1
>>> print(a, b)
11

# ์ •์ˆ˜ํ˜•
>>> a = 1.5
>>> b = 3.5
>>> print(a, b)
1.5 3.5

# ๋ฌธ์žํ˜•
>>> a = "ABC"
>>> b = "101010"
>>> print (a, b)
ABC 101010

# ๋ถˆ๋ฆฐํ˜•
>>> a = True
>>> b = False
>>> print(a, b)
True False

๋ถˆ๋ฆฐํ˜•์„ ์ถœ๋ ฅํ•  ๊ฒฝ์šฐ True์™€ False๋Š” ๋ฌธ์ž์—ด์ด ์•„๋‹Œ 1๊ณผ 0์ด ์ €์žฅ๋˜์–ด ์žˆ๋‹ค๊ณ  ๋ณด์•„์•ผ ํ•จ


๊ธฐ๋ณธ ์—ฐ์‚ฐ

  1. ์‚ฌ์น™์—ฐ์‚ฐ
  • ์—ฐ์‚ฐ์ž : +, -, *, / ๊ธฐํ˜ธ
  • ํ”ผ์—ฐ์‚ฐ์ž : ์—ฐ์‚ฐ์ž์— ์˜ํ•ด ๊ณ„์‚ฐ๋˜๋Š” ์ˆซ์ž

ex) ‘3 + 2’์—์„œ +๋Š” ์—ฐ์‚ฐ์ž, 3๊ณผ 2๋Š” ํ”ผ์—ฐ์‚ฐ์ž

>>> 25 + 30
55
>>> 30 - 12
18
>>> 50 * 3
150
>>> 30 / 5
6.0
  1. ์ œ๊ณฑ์Šน

2๊ฐœ์˜ ๋ณ„ํ‘œ ๊ธฐํ˜ธ(**)์‚ฌ์šฉ

ex) 3์˜ 5์Šน : 3 ** 5

>>> print(3 * 3 * 3 * 3 * 3)   #3์„ ๋‹ค์„ฏ ๋ฒˆ ๊ณฑํ•จ
243
>>> print(3 ** 5)   #3์˜ 5์Šน
243
  1. ๋‚˜๋ˆ—์…ˆ์˜ ๋ชซ๊ณผ ๋‚˜๋จธ์ง€
  • ๋ชซ: 2๊ฐœ์˜ ๋น—๊ธˆ ๊ธฐํ˜ธ (//)
  • ๋‚˜๋จธ์ง€: ํผ์„ผํŠธ ๊ธฐํ˜ธ (%)
>>> print(7 // 2)   #7 ๋‚˜๋ˆ„๊ธฐ 2์˜ ๋ชซ
3
>>> print(7 % 2)   #7 ๋‚˜๋ˆ„๊ธฐ 2์˜ ๋‚˜๋จธ์ง€
1
  1. ์ฆ๊ฐ€, ๊ฐ์†Œ ์—ฐ์‚ฐ

C๋‚˜ ์ž๋ฐ”์—์„œ๋Š” a++๋‚˜ a--๋กœ ํ‘œํ˜„ํ•˜์ง€๋งŒ ํŒŒ์ด์ฌ์—์„œ๋Š” ์‚ฌ์šฉ ๋ถˆ๊ฐ€

ex) a = a + 1๊ณผ ๊ฐ™์ด ์‚ฌ์šฉ

>>> a = 1
>>> a = a + 1
>>> print(a)
2

# a ์ฆ๊ฐ€ ์—ฐ์‚ฐ
>>> a += 1   
>>> print(a)
3

# a ๊ฐ์†Œ ์—ฐ์‚ฐ
>>> a = a -1
>>> a -= 1   
>>> print(a)
1

์ž๋ฃŒํ˜• ๋ณ€ํ™˜

4๊ฐ€์ง€ ํƒ€์ž…(์ •์ˆ˜ํ˜•, ์‹ค์ˆ˜ํ˜•, ๋ฌธ์žํ˜•, ๋ถˆ๋ฆฐํ˜•)์˜ ์ž๋ฃŒํ˜•์„ ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉ

ex) ์›น์‚ฌ์ดํŠธ์— ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜๋Š” ๊ฒฝ์šฐ: ์ธํ„ฐํ”„๋ฆฌํ„ฐ์™€ ์šด์˜ ์ฒด๊ณ„๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋‹ฌ๋ผ์ง

  1. ์ •์ˆ˜ํ˜• → ์‹ค์ˆ˜ํ˜•
>>> a = 10
>>> print(a)
10

>>> a = float(10)
>>> print(a)
10.0

 ๐Ÿ’ก ์ •์ˆ˜์™€ ์‹ค์ˆ˜๋Š” ๋˜‘๊ฐ™์•„ ๋ณด์ด์ง€๋งŒ ์ปดํ“จํ„ฐ ์ž…์žฅ์—์„œ๋Š” ์ „ํ˜€ ๋‹ค๋ฅธ ์ˆ˜์ด๋‹ค.

 

>>> a = 10
>>> b = 3
>>> print (a / b)
3.3333333333333335   # ํ˜•๋ณ€ํ™˜ ๋ฐœ์ƒ (๋™์  ํƒ€์ดํ•‘ ๋•Œ๋ฌธ์— ๋‚˜ํƒ€๋‚˜๋Š” ํ˜„์ƒ)

>>> a = 10.0
>>> b = 3
>>> print (a / b)
3.3333333333333335

 ๐Ÿ’ก ํŒŒ์ด์ฌ ํŠน์ง•: ๊ณ„์‚ฐ ์‹œ ํ•„์š”ํ•˜๋‹ค ์ƒ๊ฐ๋˜๋ฉด ์Šค์Šค๋กœ ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜

 

  1. ์‹ค์ˆ˜ํ˜• → ์ •์ˆ˜ํ˜•
>>> a = int(10.7)
>>> b = int(10.3)
>>> print(a)
10
>>> print(b)
10

 ๐Ÿ’ก ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ๋Š” ์†Œ์ˆ˜์  ์ดํ•˜์˜ ๋‚ด๋ฆผ์ด ๋ฐœ์ƒ

 

  1. ์ˆซ์žํ˜•๊ณผ ๋ฌธ์žํ˜• ๊ฐ„ ๋ณ€ํ™”
>>> a = '76.3'     # ๋ฌธ์žํ˜•
>>> b = float(a)   # ์ˆซ์žํ˜•
>>> print(a)
76.3
>>> print(b)
76.3
>>> print (a + b)  # ๋ฌธ์ž์—ด๊ณผ ์ˆซ์ž์—ด์˜ ๋ง์…ˆ ๋ถˆ๊ฐ€๋Šฅ
Traceback (most recent call last):
File "<stdin>", line 1, in ‹module>
TypeError: can only concatenate str (nor "float") to str
>>> a = float(a)
>>> b = a
>>> print(a + b)
152.6

>>> a = str(a)
>>> b = str(b)
>>> print(a + b)   # ๋ฌธ์žํ˜• ๊ฐ„์˜ ๋ง์…ˆ : ๋‹จ์ˆœ ๋ถ™์ด๊ธฐ
76.376.3

์ž๋ฃŒํ˜• ํ™•์ธํ•˜๊ธฐ

type() ํ•จ์ˆ˜ ์‚ฌ์šฉ

>>> a = int(10.3)
>>> type(a)
<class 'int’>

>>> b = float(10.3)
>>> type(b)
<class 'float'>

>>> c = str(10.3)
>>> type(c)
<class 'str’>

๋ฆฌ์ŠคํŠธ

ํ•œ ๊ฐœ์˜ ๋ณ€์ˆ˜์— ๋ชจ๋“  ๊ฐ’์„ ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅํ•˜๋Š” ์ž๋ฃŒํ˜• (์‹œํ€€์Šค ์ž๋ฃŒํ˜•)

๋‹ค์–‘ํ•œ ์ž๋ฃŒํ˜•์„ ๋ฆฌ์ŠคํŠธ์— ํฌํ•จ ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Œ

ex)

color๋ผ๋Š” ๋ณ€์ˆ˜๋Š” 3๊ฐœ์˜ ๊ฐ’์„ ๊ฐ€์ง€๋ฉฐ ๊ฐ๊ฐ์˜ ๊ฐ’์€ red, blue, green

์ธ๋ฑ์‹ฑ

๋ฆฌ์ŠคํŠธ์˜ ๊ฐ’์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•ด ์ƒ๋Œ€ ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ

์ธ๋ฑ์Šค ์ฃผ์†Œ(๊ฐ’) : ์ฒซ ๋ฒˆ์งธ ๊ฐ’์„ 0์œผ๋กœ ์„ค์ •ํ–ˆ์„ ๋•Œ, ์ฒซ ๋ฒˆ์งธ ๊ฐ’๊ณผ ์–ผ๋งˆ๋‚˜ ๋–จ์–ด์ ธ ์žˆ๋Š”์ง€

>>> colors = ['red', 'blue', 'green']
>>> print(colors[0])
red
>>> print(colors[2])
green
>>> print(len(colors))
3

๐Ÿ’ก len : ๊ธธ์ด ๋ฐ˜ํ™˜ ํ•จ์ˆ˜

 

์Šฌ๋ผ์ด์‹ฑ

์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ „์ฒด ๋ฆฌ์ŠคํŠธ์—์„œ ์ผ๋ถ€๋ฅผ ์ž˜๋ผ๋‚ด์–ด ์‚ฌ์šฉ

๐Ÿ’ก ๋ณ€์ˆ˜๋ช…[์‹œ์ž‘ ์ธ๋ฑ์Šค:๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค]

** ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค -1 ๊นŒ์ง€๋งŒ ์ถœ๋ ฅ ๋จ

>>> cities = ['์„œ์šธ', '๋ถ€์‚ฐ', '์ธ์ฒœ', '๋Œ€๊ตฌ', '๋Œ€์ „', '๊ด‘์ฃผ', '์šธ์‚ฐ', '์ˆ˜์›']
>>> cities[0๏ผš6] 
['์„œ์šธ', '๋ถ€์‚ฐ', '์ธ์ฒœ', '๋Œ€๊ตฌ', '๋Œ€์ „', '๊ด‘์ฃผ']

๋ฆฌ๋ฒ„์Šค ์ธ๋ฑ์Šค

์ธ๋ฑ์Šค๋ฅผ ๋งˆ์ง€๋ง‰ ๊ฐ’๋ถ€ํ„ฐ ์‹œ์ž‘ (๋งˆ์ง€๋ง‰ ๊ฐ’๋ถ€ํ„ฐ -1์„ ํ• ๋‹นํ•˜์—ฌ ์ฒซ ๋ฒˆ์งธ ๊ฐ’๊นŒ์ง€ ์—ญ์ˆœ์œผ๋กœ ์˜ฌ๋ผ์˜ค๋Š” ๋ฐฉ์‹)

>>> cities = ['์„œ์šธ', '๋ถ€์‚ฐ', '์ธ์ฒœ', '๋Œ€๊ตฌ', '๋Œ€์ „', '๊ด‘์ฃผ', '์šธ์‚ฐ', '์ˆ˜์›']
>>> cities[-8:] # -8์˜ ์ธ๋ฑ์Šค๊ฐ’๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ถœ๋ ฅํ•˜๋ผ
['์„œ์šธ', '๋ถ€์‚ฐ', '์ธ์ฒœ', '๋Œ€๊ตฌ', '๋Œ€์ „', '๊ด‘์ฃผ', '์šธ์‚ฐ', '์ˆ˜์›']

์‹œ์ž‘ ์ธ๋ฑ์Šค๊ฐ€ ๋น„์–ด์žˆ์œผ๋ฉด ์ฒ˜์Œ๋ถ€ํ„ฐ, ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๊ฐ€ ๋น„์–ด์žˆ์œผ๋ฉด ๋งˆ์ง€๋ง‰๊นŒ์ง€ ์ถœ๋ ฅํ•˜๋ผ๋Š” ์˜๋ฏธ

์ธ๋ฑ์Šค์˜ ๋ฒ”์œ„๋ฅผ ๋„˜์–ด๊ฐ€๋Š” ์Šฌ๋ผ์ด์‹ฑ

์ธ๋ฑ์Šค์˜ ์ฒซ ๋ฒˆ์งธ ๊ฐ’์ด๋‚˜ ๋งˆ์ง€๋ง‰ ๊ฐ’์ด ๋น„์–ด ์žˆ์–ด๋„ ์ž˜ ์ž‘๋™ํ•จ

์ธ๋ฑ์Šค๋ฅผ ๋”ฐ๋กœ ๋„ฃ์ง€ ์•Š๊ณ  cities[:]๊ณผ ๊ฐ™์ด ์ฝœ๋ก (๏ผš)์„ ๋„ฃ์œผ๋ฉด ๋ฆฌ์ŠคํŠธ์˜ ๋ชจ๋“  ๊ฐ’์„ ๋ฐ˜ํ™˜

>>> cities = ['์„œ์šธ', '๋ถ€์‚ฐ', '์ธ์ฒœ', '๋Œ€๊ตฌ', '๋Œ€์ „', '๊ด‘์ฃผ', '์šธ์‚ฐ', '์ˆ˜์›']
>>> cities[๏ผš]          # cities ๋ณ€์ˆ˜์˜ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€
['์„œ์šธ', '๋ถ€์‚ฐ', '์ธ์ฒœ', '๋Œ€๊ตฌ', '๋Œ€์ „', '๊ด‘์ฃผ', '์šธ์‚ฐ', '์ˆ˜์›']
>>> cities[-50:50]      # ๋ฒ”์œ„๋ฅผ ๋„˜์–ด๊ฐˆ ๊ฒฝ์šฐ ์ž๋™์œผ๋กœ ์ตœ๋Œ€ ๋ฒ”์œ„๋ฅผ ์ง€์ •
['์„œ์šธ', '๋ถ€์‚ฐ', '์ธ์ฒœ', '๋Œ€๊ตฌ', '๋Œ€์ „', '๊ด‘์ฃผ', '์šธ์‚ฐ', '์ˆ˜์›']

์ฆ๊ฐ€๊ฐ’

 ๐Ÿ’ก ๋ณ€์ˆ˜๋ช…[์‹œ์ž‘ ์ธ๋ฑ์Šค:๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค:์ฆ๊ฐ€๊ฐ’]

>>> cities = ['์„œ์šธ', '๋ถ€์‚ฐ', '์ธ์ฒœ', '๋Œ€๊ตฌ', '๋Œ€์ „', '๊ด‘์ฃผ', '์šธ์‚ฐ', '์ˆ˜์›']
>>> cities[::2]           #2์นธ ๋‹จ์œ„๋กœ
['์„œ์šธ', '์ธ์ฒœ', '๋Œ€์ „', '์šธ์‚ฐ']
>>> cities[::-1]          #์—ญ์œผ๋กœ์Šฌ๋ผ์ด์‹ฑ
['์ˆ˜์›', '์šธ์‚ฐ', '๊ด‘์ฃผ', '๋Œ€์ „', '๋Œ€๊ตฌ', '์ธ์ฒœ', '๋ถ€์‚ฐ', '์„œ์šธ']

๋ฆฌ์ŠคํŠธ์˜ ์—ฐ์‚ฐ

๋ง์…ˆ ์—ฐ์‚ฐ

>>> colorl = ['red', 'blue', 'green']
>>> color2 = ['orange', 'black', 'white']
>>> print(colorl + color2)    # ๋‘ ๋ฆฌ์ŠคํŠธ. ํ•ฉ์น˜๊ธฐ
['red', 'blue’, ’green', 'orange', 'black', 'white']

>>> len(colorl)               # ๋ฆฌ์ŠคํŠธ ๊ธธ์ด
3

>>> total_color = colorl + color2
>>> total_color
['red', 'blue’, ’green', 'orange', 'black', 'white']

๐Ÿ’ก ๋ง์…ˆ ์—ฐ์‚ฐ์„ ํ•˜๋”๋ผ๋„ ์–ด๋”˜๊ฐ€์— ๋”ฐ๋กœ ๋ณ€์ˆ˜ ํ˜•ํƒœ๋กœ ์ €์žฅํ•ด์ฃผ์ง€ ์•Š์œผ๋ฉด ๊ธฐ์กด ๋ณ€์ˆ˜๋“ค์—๋Š” ๋ณ€ํ™”๊ฐ€ ์—†์Œ

 

๊ณฑ์…ˆ ์—ฐ์‚ฐ

๋ฆฌ์ŠคํŠธ์˜ ๊ณฑ์…ˆ ์—ฐ์‚ฐ์€ ๋ฆฌ์ŠคํŠธ์— n์„ ๊ณฑํ–ˆ์„ ๋•Œ ํ•ด๋‹น ๋ฆฌ์ŠคํŠธ๋ฅผ n๋ฐฐ๋งŒํผ ๋Š˜๋ ค์คŒ

>>> colorl * 2           # colorl ๋ฆฌ์ŠคํŠธ 2ํšŒ ๋ฐ˜๋ณต
['red', 'blue', 'green', 'red', 'blue', 'green']

in์—ฐ์‚ฐ

ํฌํ•จ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜๋Š” ์—ฐ์‚ฐ

>>> 'blue' in color2      # color2 ๋ฆฌ์ŠคํŠธ์—์„œ ๋ฌธ์ž์—ด 'blue'์˜ ์กด์žฌ ์—ฌ๋ถ€ ๋ฐ˜ํ™˜
False

๋ฆฌ์ŠคํŠธ ์ถ”๊ฐ€ ๋ฐ ์‚ญ์ œ

# append() ํ•จ์ˆ˜
>>> color = ['red', 'blue', 'green']
>>> color.append('white')
>>> color
['red', 'blue', 'green', 'white']

# extend() ํ•จ์ˆ˜
>>> color.extend(['black', 'purple'])
>>> color
['red', 'blue', 'green', 'white', 'black', 'purple']

# insert() ํ•จ์ˆ˜
>>> color.insert(0, 'orange')
>>> color
['orange', 'red', 'blue', 'green', 'white', 'black', 'purple']

# remove() ํ•จ์ˆ˜
>>> color.remove('red')
>>> color
['orange', 'blue', 'green', 'white', 'black', 'purple']

์ธ๋ฑ์Šค์˜ ์žฌํ• ๋‹น๊ณผ ์‚ญ์ œ

  • ์žฌํ• ๋‹น : color[0] = ‘orange’ ์ฒ˜๋Ÿผ ์ธ๋ฑ์Šค์— ์ƒˆ๋กœ์šด ๊ฐ’ ํ• ๋‹น
  • ์‚ญ์ œ : del() ํ•จ์ˆ˜ ์‚ฌ์šฉ
>>> color = ['red', 'blue', 'green']
>>> color[0] = 'orange'
>>> color
['orange', 'blue', 'green']

>>> del color[0]
>>> color
['blue', 'green']

del์€ ๋ณ€์ˆ˜ ์ž์ฒด๋ฅผ ์‚ญ์ œํ•˜๋Š” ๋ช…๋ น์–ด

ํ•˜์ง€๋งŒ ๋ฆฌ์ŠคํŠธ ๋‚ด ํŠน์ • ์ธ๋ฑ์Šค๋ฅผ ์ง€์ •ํ•˜๋ฉด, remove() ํ•จ์ˆ˜ ์ฒ˜๋Ÿผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ


ํŒจํ‚น๊ณผ ์–ธํŒจํ‚น

  • ํŒจํ‚น : ํ•œ ๋ณ€์ˆ˜์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ• ๋‹น (๋ฆฌ์ŠคํŠธ ์ž์ฒด๋ฅผ ๋œปํ•˜๊ธฐ๋„ ํ•จ)
  • ์–ธํŒจํ‚น : ํ•œ ๋ณ€์ˆ˜์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด์žˆ์„ ๋•Œ, ๊ทธ๊ฒƒ์„ ๊ฐ๊ฐ์˜ ๋ณ€์ˆ˜๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•
>>> t = [1, 2, 3]          # 1, 2, 3์„ ๋ณ€์ˆ˜ t์— ํŒจํ‚น
>>> a, b, c = t            # t์— ์žˆ๋Š” ๊ฐ’ 1, 2, 3์„ ๋ณ€์ˆ˜ a, b, c์— ์–ธํŒจํ‚น
>>> print(t, a, b, c)
[1, 2, 3] 1 2 3

๋ฆฌ์ŠคํŠธ์˜ ๊ฐ’๊ณผ ์–ธํŒจํ‚น์„ ์‹œ๋„ํ•˜๋Š” ๊ฐœ์ˆ˜๊ฐ€ ๋งž์ง€ ์•Š์„ ๊ฒฝ์šฐ

>>> t = [1, 2, 3]
>>> a, b, c, d, e = t
Traceback (most recent call last)๏ผš
File "<stdin>", line 1, in <module>
ValueError๏ผš not enough values to unpack (expected 5, got 3)
>>> a, b = t
Traceback (most recent call last)๏ผš
File "<stdin>", line 1, in <module>
ValueError๏ผš too many values to unpack (expected 2)

์ด์ฐจ์› ๋ฆฌ์ŠคํŠธ

๋ฆฌ์ŠคํŠธ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด, ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜์— ํ• ๋‹น

ํ‘œ์— ๊ฐ’์„ ์ฑ„์› ์„ ๋•Œ ์ƒ๊ธฐ๋Š” ๊ฐ’๋“ค์˜ ์ง‘ํ•ฉ

>>> kor_score = [49, 79, 20, 100, 80]
>>> math_score = [43, 59, 85, 30, 90]
>>> eng_score = [49, 79, 48, 60, 100]
>>> midterm_score = [kor_score, math_score, eng_score]
>>> midterm_score
[[49, 79, 20, 100, 80], [43, 59, 85, 30, 90], [49, 79, 48, 60, 100]]

์ด์ฐจ์› ๋ฆฌ์ŠคํŠธ์˜ ๊ฐ’์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋Œ€ํ™œํ˜ธ 2๊ฐœ ์‚ฌ์šฉํ•˜์—ฌ ์ธ๋ฑ์‹ฑ

 ๐Ÿ’ก ๋ณ€์ˆ˜๋ช…[ํ–‰] [์—ด]

>>> print(midterm_score[0][2])
20

๋ฆฌ์ŠคํŠธ์— ๋ฉ”๋ชจ๋ฆฌ ์ €์žฅ

>>> kor_score = [49, 79, 20, 100, 80]
>>> math_score = [43, 59, 85, 30, 90]
>>> eng_score = [49, 79, 48, 60, 100]
>>> midterm_score = [kor_score, math_score, eng_score]
>>> midterm_score
[[49, 79, 20, 100, 80], [43, 59, 85, 30, 90], [49, 79, 48, 60, 100]]
>>>
>>> math_score[0] = 1000
>>> midterm_score
[[49, 79, 20, 100, 80], [1000, 59, 85, 30, 90], [49, 79, 48, 60, 100]]

ํŒŒ์ด์ฌ์€ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ €์žฅํ•  ๋•Œ ๊ฐ’ ์ž์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฐ’์ด ์œ„์น˜ํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ์ €์žฅ

midterm_score ๋ณ€์ˆ˜์—๋Š” math_score์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, math_score์˜ ๊ฐ’์ด ๋ณ€ํ•˜๋ฉด midterm_score ์ฃผ์†Œ ๊ฐ’์ด ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ๋Š” ๋ณ€๊ฒฝ๋œ ๊ฐ’์„ ๋ณด์—ฌ์คŒ

๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์™€ ๊ฐ’์˜ ์ฐจ์ด

>>> a = 300
>>> b = 300
>>> a is b        # ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๋น„๊ตํ•˜๋Š” ์—ฐ์‚ฐ
False
>>> a == b        # ๊ฐ’์„ ๋น„๊ตํ•˜๋Š” ์—ฐ์‚ฐ
True

a์™€ b์— ์ €์žฅ๋œ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฐ’(300)์€ ๊ฐ™์ง€๋งŒ, a์™€ b ๋ณ€์ˆ˜ ์ž์ฒด์— ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๊ฐ’(์ฃผ์†Œ)์€ ๋‹ค๋ฆ„

** ์ •์ˆ˜ํ˜• ์ €์žฅ ๋ฐฉ์‹์˜ ํŠน์„ฑ

>>> a = 1
>>> b = 1
>>> a is b
True
>>> a == b
True

ํŒŒ์ด์ฌ์€ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ๊ตฌ๋™๋  ๋•Œ, -5~256๊นŒ์ง€์˜ ์ •์ˆ˜๊ฐ’์„ ํŠน์ • ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ์ €์žฅํ•จ

ํ•ด๋‹น ์ˆซ์ž๋ฅผ ํ• ๋‹นํ•˜๋ ค๊ณ  ํ•  ๋•Œ ํ•ด๋‹น ๋ณ€์ˆ˜๋Š” ๊ทธ ์ˆซ์ž๊ฐ€ ๊ฐ€์ง„ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋กœ ์—ฐ๊ฒฐ

→ ์ฃผ์†Œ์™€ ๊ฐ’์ด ๋ชจ๋‘ ๊ฐ™์€ ๊ฒƒ์œผ๋กœ ๋‚˜์˜ด


๋ฉ”๋ชจ๋ฆฌ ์ €์žฅ ๊ตฌ์กฐ๋กœ ์ธํ•œ ๋ฆฌ์ŠคํŠธ์˜ ํŠน์ง•

ํ•˜๋‚˜์˜ ๋ฆฌ์ŠคํŠธ์˜ ๋‹ค์–‘ํ•œ ์ž๋ฃŒํ˜• ํฌํ•จ ๊ฐ€๋Šฅ

>>> a = ["color", 1, 0.2]    # ๋ฌธ์žํ˜•, ์ •์ˆ˜ํ˜•, ์‹ค์ˆ˜ํ˜•

>>> color = ['yellow', 'blue', 'green', 'black', 'purple']
>>> a[0] = color
>>> print(a)
[['yellow', 'blue', 'green', 'black', 'purple'], 1, 0.2]    # ์ค‘์ฒฉ ๋ฆฌ์ŠคํŠธ

ํŒŒ์ด์ฌ์˜ ๋ฆฌ์ŠคํŠธ๊ฐ€ ๊ฐ’์ด ์•„๋‹Œ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ฃผ์†Œ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์ด์–ด์„œ ์ƒˆ๋กœ์šด ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ์ž์œ ๋กœ์›€

๋ฆฌ์ŠคํŠธ์˜ ์ €์žฅ ๋ฐฉ์‹

>>> a = [5, 4, 3, 2, 1]
>>> b = [1, 2, 3, 4, 5]
>>> b = a                # b์— a ํ• ๋‹น
>>> print(b)
[5, 4, 3, 2, 1]

>>> a.sort()
>>> print(b)
[1, 2, 3, 4, 5]          # a๋งŒ ์ •๋ ฌํ–ˆ๋Š”๋ฐ b๋„ ๊ฐ™์ด ์ •๋ ฌ๋จ

>>> b = [6,7,8,9,10]     # ์ƒˆ๋กœ์šด ๊ฐ’ ํ• ๋‹น
>>> print(a,b)           # ์„œ๋กœ ๋‹ค๋ฅธ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ํ• ๋‹น ๋ฐ›์Œ
[1,2,3,4,5][6,7,8,9,10]

๋‘ ๋ณ€์ˆ˜๊ฐ€ ๊ฐ™์€ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๊ณ , ๊ฐ™์€ ๋ฆฌ์ŠคํŠธ ๊ฐ’์„ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ์œผ๋ฏ€๋กœ a ๊ฐ’์ด ๋ฐ”๋€Œ๋ฉด b ์—ญ์‹œ ๋ฐ”๋€ ๊ฐ’์„ ๋ณด์—ฌ์ฃผ๊ฒŒ ๋จ