Chapter 5. ๋ฆฌ์ŠคํŠธ#

ํ•™์Šต๋ชฉํ‘œ์™€ ๊ธฐ๋Œ€ํšจ๊ณผ

  • ํ•™์Šต๋ชฉํ‘œ

    • ํŒŒ์ด์ฌ์—์„œ๋Š” ๋‹ค์ˆ˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ•˜๋‚˜๋กœ ๋ฌถ์–ด์„œ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ์ž๋ฃŒํ˜•์„ ์ œ๊ณตํ•œ๋‹ค.

    • ๊ทธ ์ค‘์— ํ•˜๋‚˜์ธ ๋ฆฌ์ŠคํŠธ์˜ ๊ฐœ๋…์„ ์ดํ•ดํ•˜๊ณ  ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•ด๋ณด์ž.

    • ๋ฆฌ์ŠคํŠธ์˜ ์ธ๋ฑ์‹ฑ, ์Šฌ๋ผ์ด์‹ฑ, ๋ฆฌ์ŠคํŠธ์˜ ์ฃผ์š” ๋ฉ”์„œ๋“œ๋ฅผ ์ตํ˜€๋ณด์ž.

    • ๋ฆฌ์ŠคํŠธ ์—ฐ์‚ฐ์ž์™€ ๋ฆฌ์ŠคํŠธ ์ถ•์•ฝ๋ฒ•์— ๋Œ€ํ•ด ์ตํ˜€๋ณด์ž.

  • ๊ธฐ๋Œ€ํšจ๊ณผ

    • ๋ฆฌ์ŠคํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์ˆ˜์˜ ๋‹ค์–‘ํ•œ ํƒ€์ž…์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ#

  • ๋ฆฌ์ŠคํŠธ๋Š” ์ˆซ์ž, ๋ฌธ์ž, ๋ฆฌ์ŠคํŠธ, ๋”•์…”๋„ˆ๋ฆฌ ๋“ฑ ์–ด๋– ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋“  ๋‹ค ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๋งŒ๋ฌผ๋ฐ•์Šค์ด๋‹ค.

  • ๋ฆฌ์ŠคํŠธ๋Š” ๋Œ€๊ด„ํ˜ธ[ ]๋กœ ๋ฌถ์–ด์ค€๋‹ค.

  • ๋ฆฌ์ŠคํŠธ์— ๋“ค์–ด์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์•„์ดํ…œ, ์›์†Œ, ์š”์†Œ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

  • ๋ฆฌ์ŠคํŠธ ๋‚ด ์•„์ดํ…œ์€ ์ฝค๋งˆ(,)๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค.

  • ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

[์•„์ดํ…œ1, ์•„์ดํ…œ2, ์•„์ดํ…œ3, ..., ์•„์ดํ…œn]

์ง์ ‘ ์ƒ์„ฑ#

  • ๋Œ€๊ด„ํ˜ธ ์•ˆ์— ์•„์ดํ…œ์„ ์ฝค๋งˆ๋กœ ๋‚˜์—ดํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ง์ ‘ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์•„์ดํ…œ์—†์ด ๋Œ€๊ด„ํ˜ธ๋งŒ ์žˆ์œผ๋ฉด ๋น„์–ด์žˆ๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

a = [1, 2, 3, 4, 5]
b = [3, 8, 1, 3, 2]
c = [1, 'apple', ['banana',1, 2], 'coconut']
e = [ ]

๐Ÿ˜„ โ€˜appleโ€™, โ€˜bananaโ€™, โ€˜coconutโ€™, โ€˜durianโ€™์„ ์•„์ดํ…œ์œผ๋กœ ๊ฐ–๊ณ  ์žˆ๋Š” ๋ฆฌ์ŠคํŠธ ๋ณ€์ˆ˜ d๋ฅผ ์ •์˜ํ•ด๋ณด์„ธ์š”.

list() ํ•จ์ˆ˜๋กœ ์ƒ์„ฑ#

  • list() ํ•จ์ˆ˜๋Š” ๋นˆ ๋ฆฌ์ŠคํŠธ, ์ˆซ์ž๋ฆฌ์ŠคํŠธ, ๋ฌธ์ž์—ด์„ ๋‚ฑ๊ฐœ๋ฌธ์ž๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ๋กœ ๋งŒ๋“œ๋Š” ํ•จ์ˆ˜์ด๋‹ค.

item = list()
  • range()ํ•จ์ˆ˜์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•˜๋ฉด ์ˆ˜์—ด๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

a=list(range(1,10))
print(a)
[1, 2, 3, 4, 5, 6, 7, 8, 9]

๐Ÿ˜„ 10๋ถ€ํ„ฐ 100๊นŒ์ง€ 10์”ฉ ์ฆ๊ฐ€(10, 20, 30, โ€ฆ.)ํ•˜๋Š” ๊ฐ’์„ ๋‹ด๊ณ  ์žˆ๋Š” ๋ฆฌ์ŠคํŠธ f๋ฅผ ๋งŒ๋“ค์–ด๋ณด์„ธ์š”.

range() ํ•จ์ˆ˜

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

์˜๋ฏธ

์˜ˆ์‹œ

range(๋)

[0, 1, 2, 3, โ€ฆ, ๋-1]

range(4) โ†’ [0, 1, 2, 3]

range(์‹œ์ž‘, ๋)

[์‹œ์ž‘, ์‹œ์ž‘+1, ์‹œ์ž‘+2, โ€ฆ, ๋-1]

range(3, 5) โ†’ [3, 4]

range(์‹œ์ž‘, ๋, ์ฆ๊ฐ)

[์‹œ์ž‘, ์‹œ์ž‘+์ฆ๊ฐ, ์‹œ์ž‘+์ฆ๊ฐร—2, โ€ฆ, ์‹œ์ž‘+์ฆ๊ฐร—k]

range(2, 11, 2) โ†’ [2, 4, 6, 8, 10]

range(์‹œ์ž‘, ๋, -์ฆ๊ฐ)

[์‹œ์ž‘, ์‹œ์ž‘-์ฆ๊ฐ, ์‹œ์ž‘-์ฆ๊ฐร—2, โ€ฆ, ์‹œ์ž‘-์ฆ๊ฐร—k]

range(9, 1, -2) โ†’ [9, 7, 5, 3]

  • range() ํ•จ์ˆ˜๋Š” ์ผ์ •ํ•œ ๊ทœ์น™์— ๋”ฐ๋ผ ๋‚˜์—ด๋œ ์ˆ˜์—ด์„ ์ƒ์„ฑํ•œ๋‹ค.

  • ๋์€ ๋ฒ”์œ„์— ๋ฏธํฌํ•จ์ด๋‹ค.

  • range ํ•จ์ˆ˜์˜ ๊ฒฐ๊ณผ๋Š” ๋ฆฌ์ŠคํŠธ ํ˜•ํƒœ๋กœ ๋‚˜์˜ค์ง€ ์•Š๋Š”๋‹ค. ๋ฆฌ์ŠคํŠธ๋กœ ๋ณด๊ณ ์‹ถ์œผ๋ฉด list() ํ•จ์ˆ˜์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•œ๋‹ค.

  • ๋ฌธ์ž์—ด์„ ๋‚ฑ๊ฐœ ๋ฌธ์ž๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

์˜๋ฏธ

์˜ˆ์‹œ

list(๋ฌธ์ž์—ด)

๋ฌธ์ž์—ด์„ ํ•œ ๊ธ€์ž์”ฉ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ

list(โ€˜12345โ€™) โ†’ [โ€˜1โ€™, โ€˜2โ€™, โ€˜3โ€™, โ€˜4โ€™, โ€˜5โ€™]

a=list('hello')
print(a)
['h', 'e', 'l', 'l', 'o']

๐Ÿ˜„ โ€˜DISCOโ€™๋ฅผ ํ•œ ๊ธ€์ž ์”ฉ ์•„์ดํ…œ์œผ๋กœ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ์ถœ๋ ฅํ•ด๋ณด์„ธ์š”.

split() ๋ฉ”์„œ๋“œ๋กœ ์ƒ์„ฑ#

  • split() ํ•จ์ˆ˜๋Š” ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ธฐ์ค€์— ๋”ฐ๋ผ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ๋กœ ๋งŒ๋“œ๋Š” ํ•จ์ˆ˜์ด๋‹ค.

  • ๋ฌธ์ž์—ด์„ ๊ด„ํ˜ธ์•ˆ์˜ โ€˜๋ถ„๋ฆฌ๊ธฐ์ค€โ€™์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋ฉฐ, ๊ด„ํ˜ธ์•ˆ์— ๋ถ„๋ฆฌ๊ธฐ์ค€์ด ์—†์œผ๋ฉด ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•œ๋‹ค.

  • ๋ถ„๋ฆฌ๋˜๋ฉด์„œ ๋ถ„๋ฆฌ๊ธฐ์ค€์€ ์ œ๊ฑฐ๋œ๋‹ค.

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

์˜๋ฏธ

์˜ˆ์‹œ

split()

๊ณต๋ฐฑ(โ€˜ โ€˜)์„ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋‚˜๋ˆ  ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑ

โ€˜1 2 3 4 5โ€™.split() โ†’ [โ€˜1โ€™, โ€˜2โ€™, โ€˜3โ€™, โ€˜4โ€™, โ€˜5โ€™]

split(๋ถ„๋ฆฌ๊ธฐ์ค€)

๋ถ„๋ฆฌ๊ธฐ์ค€๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋‚˜๋ˆ  ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑ

โ€˜1:2:3:4:5โ€™.split(โ€˜:โ€™) โ†’ [โ€˜1โ€™, โ€˜2โ€™, โ€˜3โ€™, โ€˜4โ€™, โ€˜5โ€™]

  • split() ๊ด„ํ˜ธ์•ˆ์— ๋ถ„๋ฆฌ๊ธฐ์ค€์ด ์—†์œผ๋ฏ€๋กœ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•œ๋‹ค.

item = '๋ฐ”๋‚˜๋‚˜ ๋”ธ๊ธฐ ๋ณต์ˆญ์•„'
fruit = item.split()
print(fruit)
['๋ฐ”๋‚˜๋‚˜', '๋”ธ๊ธฐ', '๋ณต์ˆญ์•„']
  • split()๊ด„ํ˜ธ์•ˆ์— ์ ํžŒ ๋ฌธ์ž์—ด์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•œ๋‹ค.

  • ์•„๋ž˜ ์˜ˆ์—์„œ๋Š” ์ฝค๋งˆ ๋‹ค์Œ์— ๊ณต๋ฐฑ๊นŒ์ง€ ํฌํ•จํ•˜์—ฌ ๊ธฐ์ค€์„ ๋ช…์‹œํ•ด์ฃผ์—ˆ๋‹ค. ์ด๋•Œ ์ฝค๋งˆ์™€ ๊ณต๋ฐฑ๊นŒ์ง€ ์ œ๊ฑฐ๋˜๋ฉด์„œ ๋ถ„๋ฆฌ๋œ๋‹ค.

item = '๋ฐ”๋‚˜๋‚˜, ๋”ธ๊ธฐ, ๋ณต์ˆญ์•„'
fruit = item.split(', ')
print(fruit)
['๋ฐ”๋‚˜๋‚˜', '๋”ธ๊ธฐ', '๋ณต์ˆญ์•„']

๐Ÿ˜„ โ€˜๋™ํ•ด๋ฌผ๊ณผ\๋ฐฑ๋‘์‚ฐ์ด\๋งˆ๋ฅด๊ณ \๋‹ณ๋„๋กโ€™ ๋ฌธ์ž์—ด์„ ๋„์–ด์“ฐ๊ธฐ ๊ธฐ์ค€์œผ๋กœ ๋ฆฌ์ŠคํŠธ๋กœ ์ถœ๋ ฅํ•ด๋ณด์„ธ์š”.

์ธ๋ฑ์‹ฑ(Indexing)#

  • ์ธ๋ฑ์Šค๋Š” ๋ฆฌ์ŠคํŠธ ๋‚ด ์•„์ดํ…œ์˜ ์ฃผ์†Œ์ด๋‹ค. ์ฆ‰, ์•„์ดํ…œ์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•ด ์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

์–‘์˜ ์ธ๋ฑ์Šค(positive index)#

positive index๋Š” ๊ฐ€์žฅ ์™ผ์ชฝ ์•„์ดํ…œ์—์„œ 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ์˜ค๋ฅธ์ชฝ์œผ๋กœ 1์”ฉ ์ฆ๊ฐ€ํ•œ๋‹ค.

shape= ['turtle', 'arrow', 'circle', 'square']
print(shape[0])
turtle

๐Ÿ˜„ ๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜ shape์—์„œ โ€˜circleโ€™ ์•„์ดํ…œ์„ ์ถœ๋ ฅํ•ด๋ณด์„ธ์š”.

  • ๋ฆฌ์ŠคํŠธ์•ˆ์— ๋ฆฌ์ŠคํŠธ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋Œ€๊ด„ํ˜ธ๋ฅผ ์—ฐ์†ํ•˜์—ฌ ์“ด๋‹ค.

  • ์˜ˆ๋ฅผ ๋“ค์–ด, โ€˜bananaโ€™๋Š” c[2][0]๊ณผ ๊ฐ™์ด ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

c=[1, 'apple', ['banana',1, 2], 'coconut']
print(c[2])
print(c[2][0])
['banana', 1, 2]
banana

๐Ÿ˜„ ๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜ shape์—์„œ โ€˜rightโ€™์™€ โ€˜downโ€™์•„์ดํ…œ์„ ์ถœ๋ ฅํ•ด๋ณด์„ธ์š”.

shape = ['turtle','arrow',[['left', 'right'],['up'],['down']]]

์Œ์˜ ์ธ๋ฑ์Šค(negative index)#

  • negative index๋Š” ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ๋ ์•„์ดํ…œ์—์„œ -1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ์™ผ์ชฝ์œผ๋กœ 1์”ฉ ๊ฐ์†Œํ•œ๋‹ค.

d=['apple', 'banana', 'coconut', 'durian']
print(d[-1], d[-2], d[-3], d[-4])
durian coconut banana apple
  • ์—†๋Š” ์ธ๋ฑ์Šค์— ์ ‘๊ทผํ•˜๋ฉด ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค.

print(d[4])
print(d[-5])

๐Ÿ˜„ ๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜ shape์—์„œ ๊ฐ€์žฅ ์ฒซ ๋ฒˆ์งธ ์•„์ดํ…œ๊ณผ ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ ์•„์ดํ…œ์„ ์ถœ๋ ฅํ•ด๋ณด์„ธ์š”.

shape = ['turtle', 'arrow', 'circle', 'square', 'diamond']

์ธ๋ฑ์Šค๋ฅผ ํ™œ์šฉํ•œ ์•„์ดํ…œ ์ˆ˜์ •#

  • ๋ฆฌ์ŠคํŠธ์•ˆ์˜ ์•„์ดํ…œ์€ ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์ˆ˜์ •ํ•œ๋‹ค.

๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜๋ช…[์ธ๋ฑ์Šค]=๊ฐ’
  • ๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜ shape์˜ ์ธ๋ฑ์Šค2์˜ ๊ฐ’์„ 100์œผ๋กœ ์ˆ˜์ •ํ•œ๋‹ค.

shape= ['turtle', 'arrow', 'circle', 'square', 'diamond']
shape[2]=100
print(shape)
['turtle', 'arrow', 100, 'square', 'diamond']

์Šฌ๋ผ์ด์‹ฑ(Slicing)#

์Šฌ๋ผ์ด์‹ฑ์ด๋ž€ ๋ฆฌ์ŠคํŠธ์˜ ์•„์ดํ…œ ์ผ๋ถ€๋ฅผ ์ž๋ฅด๋Š” ๊ฒƒ์ด๋‹ค. ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜[start:end:step]
  • start: ์Šฌ๋ผ์ด์‹ฑ ์‹œ์ž‘ ์ธ๋ฑ์Šค

  • end: ์Šฌ๋ผ์ด์‹ฑ ๋ ์ธ๋ฑ์Šค(๋ ์ธ๋ฑ์Šค๋Š” ๋ฏธํฌํ•จ)

  • step: ์ด๋™๊ฐ„๊ฒฉ, ์–‘์ˆ˜์ด๋ฉด ์˜ค๋ฅธ์ชฝ์œผ๋กœ step๋งŒํผ ์ด๋™ํ•œ๋‹ค. ์Œ์ˆ˜์ด๋ฉด ์™ผ์ชฝ์œผ๋กœ step๋งŒํผ ์ด๋™ํ•œ๋‹ค.

  • start, end, step ๋ชจ๋‘ ์ƒ๋žต ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ์•„๋ž˜์˜ ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ์‹ค์Šตํ•ด๋ณด์ž. ์ฒ˜์Œ๋ถ€ํ„ฐ ์ธ๋ฑ์Šค 3 ์ด์ „๊นŒ์ง€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ 1์”ฉ ์ด๋™ํ•˜์—ฌ ์Šฌ๋ผ์ด์‹ฑํ•œ๋‹ค.

shape= ['turtle', 'arrow', 'circle', 'square', 'diamond']
print(shape[ :3])
['turtle', 'arrow', 'circle']
  • ์ธ๋ฑ์Šค -3๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ 1์”ฉ ์ด๋™ํ•˜์—ฌ ์Šฌ๋ผ์ด์‹ฑํ•œ๋‹ค.

print(shape[-3: ])
['circle', 'square', 'diamond']
  • ์ฒ˜์Œ๋ถ€ํ„ฐ ์ธ๋ฑ์Šค -3 ์ด์ „๊นŒ์ง€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ 1์”ฉ ์ด๋™ํ•˜์—ฌ ์Šฌ๋ผ์ด์‹ฑํ•œ๋‹ค.

print(shape[:-3])
['turtle', 'arrow']
  • ์ฒ˜์Œ๋ถ€ํ„ฐ ์ธ๋ฑ์Šค -3 ์ด์ „๊นŒ์ง€ ์™ผ์ชฝ์œผ๋กœ 1์”ฉ ์ด๋™ํ•˜์—ฌ ์Šฌ๋ผ์ด์‹ฑํ•œ๋‹ค.

print(shape[:-3:-1])
['diamond', 'square']
  • ์ฒ˜์Œ๋ถ€ํ„ฐ ์ธ๋ฑ์Šค -3 ์ด์ „๊นŒ์ง€ ์™ผ์ชฝ์œผ๋กœ 2์”ฉ ๊ฑด๋„ˆ๋›ฐ๋ฉด์„œ ์Šฌ๋ผ์ด์‹ฑํ•œ๋‹ค.

print(shape[:-3:-2])
['diamond']

์ฃผ์˜

  • ๋ฌธ์ž์—ด ๋˜ํ•œ ์ธ๋ฑ์‹ฑ๊ณผ ์Šฌ๋ผ์ด์‹ฑ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ, ๋ฐฉ๋ฒ•์€ ๋™์ผํ•˜๋‹ค.

  • ๊ทธ๋Ÿฌ๋‚˜ ๋ฌธ์ž์—ด์€ ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ๋‚ฑ๊ธ€์ž ์ˆ˜์ •์ด ๋ถˆ๊ฐ€ํ•˜๋‹ค.

a = "Life is too short, You need Python"
a[8]='T'
a = "Life is too short, You need Python"
print( a[0], a[1], a[2], a[3] )
print( a[-1], a[-2], a[-3], a[-4] )
print( len(a) )
L i f e
n o h t
34
print( a[:4] )
print( a[30:])
Life
thon

์•„์ดํ…œ ๊ฐœ์ˆ˜ ํ™•์ธ len() ํ•จ์ˆ˜

  • len() ํ•จ์ˆ˜๋Š” ๋ฆฌ์ŠคํŠธ์˜ ์•„์ดํ…œ ๊ฐœ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

  • ๋ฆฌ์ŠคํŠธ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฌธ์ž์—ด, ๋”•์…”๋„ˆ๋ฆฌ, ํŠœํ”Œ, ์ง‘ํ•ฉ ๋“ฑ ๋ฌธ์ž์—ด์˜ ๊ฐœ์ˆ˜ ๋˜๋Š” ์•„์ดํ…œ์˜ ๊ฐœ์ˆ˜๋ฅผ ํ™•์ธํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

shape= ['turtle', 'arrow', 'circle', 'square']
len(shape)

๐Ÿ˜„ ๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜ wordlist์— ์žˆ๋Š” ์•„์ดํ…œ๋“ค ๊ฐ€์šด๋ฐ ์ฒซ ๊ธ€์ž๊ฐ€ โ€˜sโ€™๋กœ ์‹œ์ž‘ํ•˜๋Š” ์•„์ดํ…œ๋“ค์„ ์ถœ๋ ฅํ•˜์‹œ์˜ค.

wordlist = ['turtle', 'arrow', 'circle', 'square', 'diamond', 'hello'\
        'good', 'morning', 'student', 'sky', 'seoul', 'link',\
        'heart', 'newjeans']

๐Ÿ˜„ ๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜ wordlist์— ์žˆ๋Š” ์•„์ดํ…œ๋“ค ๊ฐ€์šด๋ฐ ์ฒซ ๊ธ€์ž๊ฐ€ โ€˜sโ€™๋กœ ์‹œ์ž‘ํ•˜๋Š” ์•„์ดํ…œ๋“ค์˜ ์ธ๋ฑ์Šค๋ฅผ ์ถœ๋ ฅํ•˜์‹œ์˜ค.

wordlist = ['turtle', 'arrow', 'circle', 'square', 'diamond', 'hello',\
        'good', 'morning', 'student', 'sky', 'seoul', 'link',\
        'heart', 'newjeans']

๋ฆฌ์ŠคํŠธ ์ฃผ์š” ๋ฉ”์„œ๋“œ#

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

์˜๋ฏธ

์˜ˆ์‹œ(a=[โ€˜aโ€™,โ€™bโ€™,โ€™cโ€™]์ผ ๋•Œ)

list.append(item)

list์˜ ๋งˆ์ง€๋ง‰์— item์„ ์ถ”๊ฐ€

a.append(โ€˜dโ€™) โžก [โ€˜aโ€™,โ€™bโ€™,โ€™cโ€™,โ€™dโ€™]

list.extend(list2)

list์˜ ๋งˆ์ง€๋ง‰์— list2์˜ ์•„์ดํ…œ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ํ™•์žฅ

a.extend([โ€˜dโ€™,โ€™eโ€™]) โžก [โ€˜aโ€™,โ€™bโ€™,โ€™cโ€™,โ€™dโ€™,โ€™eโ€™]

list.insert(index, item)

list์˜ index ์œ„์น˜์— item์„ ์‚ฝ์ž…

a.insert(1,โ€™dโ€™) โžก [โ€˜aโ€™,โ€™dโ€™,โ€™cโ€™,โ€™dโ€™]

list.remove(item)

list์—์„œ ์ฒซ ๋ฒˆ์งธ๋กœ ๋‚˜์˜ค๋Š” item์„ ์‚ญ์ œ

a.remove(โ€˜cโ€™) โžก [โ€˜aโ€™,โ€™bโ€™]

list.index(item)

list์—์„œ item์˜ index๋ฅผ ๋ฐ˜ํ™˜

a.index(โ€˜cโ€™) โžก 2

list.count(item)

list์—์„œ item์˜ ๊ฐœ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜

a.count(โ€˜cโ€™) โžก 1

list.clear()

list์˜ ๋ชจ๋“  item์˜ ์ œ๊ฑฐํ•œ๋‹ค.

a.clear() โžก []

list.pop(index)

list์—์„œ ์ธ๋ฑ์Šค์˜ ์•„์ดํ…œ์„ ์ œ๊ฑฐํ•˜๊ณ  ๋ฐ˜ํ™˜.
์ธ๋ฑ์Šค๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๋งˆ์ง€๋ง‰ ์•„์ดํ…œ์„ ์ œ๊ฑฐํ•˜๊ณ  ๋ฐ˜ํ™˜

a.pop(1) โžก [โ€˜aโ€™,โ€™cโ€™]

list.reverse()

list์—์„œ ์•„์ดํ…œ์˜ ์ˆœ์„œ๋ฅผ ๋’ค์ง‘๋Š”๋‹ค.

a.reverse() โžก [โ€˜cโ€™,โ€™bโ€™,โ€™aโ€™]

list.copy()

list๋ฅผ shallow copyํ•œ๋‹ค.

b=a.copy() โžก b= [โ€˜aโ€™,โ€™bโ€™,โ€™cโ€™]

list.sort()

list ๋‚ด item๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ

a = [โ€˜cโ€™,โ€™aโ€™,โ€™bโ€™]์ผ ๋•Œ, a.sort() โžก [โ€˜aโ€™, โ€˜bโ€™, โ€˜cโ€™]

list2 = sorted(list)

list๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜์—ฌ ๋ฐ˜ํ™˜

b = sorted(a) โžก b = [โ€˜aโ€™, โ€˜bโ€™, โ€˜cโ€™]

์•„์ดํ…œ ์ถ”๊ฐ€#

  • append() ๋ฉ”์„œ๋“œ๋Š” ์•„์ดํ…œ์„ ๋งˆ์ง€๋ง‰์— ์ถ”๊ฐ€ํ•œ๋‹ค.

  • append() ๋ฉ”์„œ๋“œ๋Š” ๋ฐ˜ํ™˜๊ฐ’์ด ์—†๋‹ค. ๋”ฐ๋ผ์„œ print(shape.append(200))์™€ ๊ฐ™์ด ์“ฐ๋ฉด โ€˜Noneโ€™์ด ์ถœ๋ ฅ๋œ๋‹ค.

๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜๋ช….append(item)
shape= ['turtle', 'arrow', 'circle', 'square', 'diamond']
print(shape)
shape.append(5)
print(shape)

shape.append('hello')
print(shape)
print(shape.append(200))
['turtle', 'arrow', 'circle', 'square', 'diamond']
['turtle', 'arrow', 'circle', 'square', 'diamond', 5]
['turtle', 'arrow', 'circle', 'square', 'diamond', 5, 'hello']
None

์•„์ดํ…œ ์‚ฝ์ž…#

๋ฆฌ์ŠคํŠธ์˜ ์ธ๋ฑ์Šค ์œ„์น˜์— ๊ฐ’์„ ์‚ฝ์ž…ํ•œ๋‹ค.

๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜๋ช….insert(์ธ๋ฑ์Šค,๊ฐ’)
shape= ['turtle', 'arrow', 'circle', 'square', 'diamond']
shape.insert(0,13)
shape.insert(4,'banana')
print(shape)
[13, 'turtle', 'arrow', 'circle', 'banana', 'square', 'diamond']

์•„์ดํ…œ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ ์ฐพ๊ธฐ#

  • ์•„์ดํ…œ์˜ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

  • ์•„์ดํ…œ์ด ์—†์œผ๋ฉด ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค. ์˜ˆ,shape.index(โ€˜computerโ€™)

shape= ['turtle', 'arrow', 'circle', 'square', 'diamond']
print(shape.index('circle'))
2

์•„์ดํ…œ ์ œ๊ฑฐ#

  • ์•„์ดํ…œ์„ ์ œ๊ฑฐํ•œ๋‹ค.

  • ์•„์ดํ…œ์ด ์—†์œผ๋ฉด ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค. ์˜ˆ,shape.remove(โ€˜computerโ€™)

shape.remove('arrow')
print(shape)
['turtle', 'circle', 'square', 'diamond']
  • ๊ทธ ๋ฐ–์˜ ๋ฆฌ์ŠคํŠธ ์‚ฌ์šฉ๋ฐฉ๋ฒ•์„ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด help(list) ๋˜๋Š” help(list๋ณ€์ˆ˜๋ช…)๋ฅผ ์™ธ์ณ๋ผ.

๐Ÿ˜„ ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ 3๊ฐœ์˜ ์ž…๋ ฅ๋ฐ›์€ ์•„์ดํ…œ๋“ค์„ ๋ฆฌ์ŠคํŠธ๋ณ€์ˆ˜ itemlist์— ์ถ”๊ฐ€ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด์„ธ์š”.

itemlist = []
for i in range(3):
  # TODO

print(itemlist)

test case-1 Input Sample

ํ”„๋ฆฐํ„ฐ
์ปดํ“จํ„ฐ
๋…ธํŠธ๋ถ

Output Sample

Input:
Input:
Input:
Output: ['ํ”„๋ฆฐํ„ฐ', '์ปดํ“จํ„ฐ', '๋…ธํŠธ๋ถ']

test case-2

Input Sample

๋ฐ”๋‚˜๋‚˜
๋”ธ๊ธฐ
์‚ฌ๊ณผ

Output Sample

Input:
Input:
Input:
Output: ['๋ฐ”๋‚˜๋‚˜', '๋”ธ๊ธฐ', '์‚ฌ๊ณผ']

๐Ÿ˜„ ์—ฐ์† ์ˆซ์ž 5๊ฐœ๋ฅผ ํ•œ์ค„์— ์ž…๋ ฅ๋ฐ›์•„ ์ •์ˆ˜ ๋ฆฌ์ŠคํŠธ๋กœ ๋งŒ๋“ค์–ด ์ถœ๋ ฅํ•˜์‹œ์˜ค.

test case-1

Input Sample

50 60 70 80 90

Output Sample

Input:
Output: [50, 60, 70, 80, 90]

test case-2

Input Sample

10 20 30 40 50

Output Sample

Input:
Output: [10, 20, 30, 40, 50]

๋ฆฌ์ŠคํŠธ ์—ฐ์‚ฐ์ž#

์—ฐ์‚ฐ ๊ธฐํ˜ธ

์˜๋ฏธ

์˜ˆ์‹œ

์‹คํ–‰ ๊ฒฐ๊ณผ

+

์•„์ดํ…œํ•ฉ์น˜๊ธฐ

[1,2,3]+['a','b']

[1,2,3,'a','b']

*

์•„์ดํ…œ์„ ํšŸ์ˆ˜๋งŒํผ ํ•ฉ์น˜๊ธฐ

[1,2,3]*2

[1,2,3,1,2,3]

a = [1,2,3]
b = [5,6,7]
print(a+b)
[1, 2, 3, 5, 6, 7]
a=[1,2,3]
print(a*3)
[1, 2, 3, 1, 2, 3, 1, 2, 3]

๋งˆ๋ฌด๋ฆฌ#

  • list๋Š” ๋‹ค์ˆ˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌถ์–ด ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜๋กœ ์ฒ˜๋ฆฌํ•  ๋•Œ ์œ ์šฉํ•˜๋‹ค.

  • ๋ฆฌ์ŠคํŠธ์˜ ์ธ๋ฑ์Šค๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•œ๋‹ค.

  • list( ) ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์ด๋‚˜ ์ˆซ์ž ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

  • split( ) ํ•จ์ˆ˜๋Š” ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

  • range( )ํ•จ์ˆ˜๋Š” ๊ทœ์น™์ ์ธ ์ˆซ์ž์—ด๋กœ ๊ตฌ์„ฑ๋œ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

  • ๋ฆฌ์ŠคํŠธ์— ์•„์ดํ…œ ์ถ”๊ฐ€๋Š” ๊ฐ์ฒด๋ช….append( )๋ฅผ ํ™œ์šฉํ•œ๋‹ค.

  • ๋ฆฌ์ŠคํŠธ์— ๋ฆฌ์ŠคํŠธ ์ถ”๊ฐ€๋Š” ๊ฐ์ฒด๋ช….extend( )๋ฅผ ํ™œ์šฉํ•œ๋‹ค.

  • ๋ฆฌ์ŠคํŠธ์— ์•„์ดํ…œ์„ ์‚ฝ์ž…์€ ๊ฐ์ฒด๋ช….insert( )๋ฅผ ํ™œ์šฉํ•œ๋‹ค.

  • ๋ฆฌ์ŠคํŠธ์—์„œ ์ฒซ๋ฒˆ์งธ๋กœ ๋‚˜์˜ค๋Š” ์•„์ดํ…œ ์ œ๊ฑฐ๋Š” ๊ฐ์ฒด๋ช….remove( )๋ฅผ ํ™œ์šฉํ•œ๋‹ค.

  • ์•„์ดํ…œ์˜ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ์—๋Š” ๊ฐ์ฒด๋ช….index( )๋ฅผ ํ™œ์šฉํ•œ๋‹ค.

  • ๋ฆฌ์ŠคํŠธ์˜ ์•„์ดํ…œ ์ •๋ ฌ์€ sort()์™€ sorted()๋ฅผ ํ™œ์šฉํ•œ๋‹ค.