
๋ฆฌ์คํธ
1. ๋ฆฌ์คํธ์ ๋ฆฌ์คํธ ์ฌ๋ผ์ด์ฑ
[ ์ฝ๋ ]
# ๋ฆฌ์คํธ(list)
numbers = [2, 3, 5, 7, 11, 13]
names = ["์ค์", "ํ๋ฆฐ", "ํํธ", "์ํ"]
# ์ธ๋ฑ์ฑ(indexing)
print(numbers[1] + numbers[3])
# ๋ฆฌ์คํธ ์ฌ๋ผ์ด์ฑ(list slicing)
print(numbers[0:4])
[ ์ถ๋ ฅ๋ฌผ ]
10
[2, 3, 5, 7]
2. ๋ฆฌ์คํธ ํจ์
- len(๋ฆฌ์คํธ๋ช ) : ๋ฆฌ์คํธ์ ๊ธธ์ด๋ฅผ ๋ํ๋ด๋ ํจ์
- ๋ฆฌ์คํธ๋ช .append(๊ฐ) : ๋ฆฌ์คํธ์ ๊ฐ์ ์ ๋ ฅํ๋ ํจ์
- del ๋ฆฌ์คํธ๋ช [๋ฒํธ] : ๋ฆฌ์คํธ๋ช ์ [๋ฒํธ]๋ฒ์งธ ๊ฐ์ ์ญ์ ํ๋ ํจ์
- ๋ฆฌ์คํธ๋ช .insert(๋ฒํธ, ๊ฐ) : ๋ฒํธ๋ฒ์งธ์ ๊ฐ์ ์ ๋ ฅํ๋ ํจ์
3. ๋ฆฌ์คํธ ์ ๋ ฌ
[ ์ฝ๋ ]
numbers = [19, 13, 2, 5, 3, 11, 7, 17]
new_list = sorted(numbers) # ์ญ์์ผ๋ก ์ ๋ ฌํ๊ณ ์ถ์ ๊ฒฝ์ฐ, sorted(numbers, reverse=True)
print(new_list) # ๊ธฐ์กด ๋ฆฌ์คํธ๋ ๊ฑด๋๋ฆฌ์ง ์๊ณ , ์ ๋ ฌ๋ ์๋ก์ด ๋ฆฌ์คํธ๋ฅผ ๋ฆฌํด
[ ์ถ๋ ฅ๋ฌผ ]
[2, 3, 5, 7, 11, 13, 17, 19]
- sort๋ ์๋ฌด๊ฒ๋ return ํ์ง ์๊ณ , list๋ฅผ ์ ๋ ฌํ๊ธฐ๋ง ํ๋ฏ๋ก ์ฃผ์ํ ๊ฒ
[ ์ฝ๋ ]
numbers = [19, 13, 2, 5, 3, 11, 7, 17]
# ์๋ชป๋ ์ฝ๋
print(numbers.sort())
# ์์ ๋ ์ฝ๋
numbers.sort()
print(numbers)
[ ์ถ๋ ฅ๋ฌผ ]
None
[2, 3, 5, 7, 11, 13, 17, 19]
4. ๋ฆฌ์คํธ์์ ๊ฐ์ ์กด์ฌ ํ์ธํ๊ธฐ(in)
[ ์ฝ๋ ]
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23]
print(7 in primes)
print(12 in primes)
[ ์ถ๋ ฅ๋ฌผ ]
True
False
- ๋ฐ๋๋ก ๊ฐ์ด ์๋์ง ํ์ธํ๊ธฐ ์ํด์๋ not in
[ ์ฝ๋ ]
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23]
print(7 not in primes)
print(12 not in primes)
[ ์ถ๋ ฅ๋ฌผ ]
False
True
5. ๋ฆฌ์คํธ ๋ฉ์๋
(1) sort ๋ฉ์๋ : sorted ํจ์์ ๋ค๋ฅด๊ฒ, sort() ๋ฉ์๋๋ ๋ฆฌ์คํธ ์์ฒด๋ฅผ ์ ๋ ฌ๋ ์ํ๋ก ๋ฐ๊ฟ ์ค
[ ์ฝ๋ ]
numbers = [5, 3, 7, 1]
numbers.sort()
print(numbers)
[ ์ถ๋ ฅ๋ฌผ ]
[1, 3, 5, 7]
(2) reserve ๋ฉ์๋ : ๋ฆฌ์คํธ์ ์์๋ค์ ๋ค์ง์ด์ง ์์๋ก ๋ฐฐ์น
[ ์ฝ๋ ]
numbers = [5, 3, 7, 1]
numbers.reverse()
print(numbers)
[ ์ถ๋ ฅ๋ฌผ ]
[1, 7, 3, 5]
(3) index ๋ฉ์๋ : ํน์ ๊ฐ์ ๊ฐ์ง๊ณ ์๋ ์์์ ์ธ๋ฑ์ค๋ฅผ ๋ฆฌํด
[ ์ฝ๋ ]
members = ["์ํ", "์ค์", "ํํธ", "ํ๋ฆฐ"]
print(members.index("์ค์"))
print(members.index("ํํธ"))
[ ์ถ๋ ฅ๋ฌผ ]
1
2
(4) remove ๋ฉ์๋ : ์ฒซ ๋ฒ์งธ๋ก ํ๋ผ๋ฏธํฐ์ ๊ฐ์ ๊ฐ์ง๊ณ ์๋ ์์๋ฅผ ์ญ์
[ ์ฝ๋ ]
fruits = ["๋ธ๊ธฐ", "๋น๊ทผ", "ํ์ธ์ ํ", "์๋ฐ", "์ฐธ์ธ", "๋ฉ๋ก "]
fruits.remove("ํ์ธ์ ํ")
print(fruits)
[ ์ถ๋ ฅ๋ฌผ ]
['๋ธ๊ธฐ', '๋น๊ทผ', '์๋ฐ', '์ฐธ์ธ', '๋ฉ๋ก ']
range ํจ์
- for ๋ฐ๋ณต๋ฌธ์ ํตํด ๋ฆฌ์คํธ์ ์ ์ฒด ๊ฐ์ ํ์ธํ ์ ์์
[ ์ฝ๋ ]
my_list = [2, 3, 5, 7, 11]
for number in my_list:
print(number)
[ ์ถ๋ ฅ๋ฌผ ]
2
3
5
7
11
- ํ๋ผ๋ฏธํฐ์ ๊ฐฏ์์ ๋ฐ๋ฅธ range ํจ์
# ํ๋ผ๋ฏธํฐ 1๊ฐ ๋ฒ์ : 0๋ถํฐ (stop-1)๊น์ง์ ๋ฒ์
for i in range (stop) :
print(i)
# ํ๋ผ๋ฏธํฐ 2๊ฐ ๋ฒ์ : start๋ถํฐ (stop-1)๊น์ง์ ๋ฒ์
for i in range (start, stop) :
print(i)
# ํ๋ผ๋ฏธํฐ 3๊ฐ ๋ฒ์ : start๋ถํฐ (stop-1)๊ฐ์ง์ ๋ฒ์๋ฅผ step์ ๊ฐ๊ฒฉ์ผ๋ก ์ถ๋ ฅ
for i in range (start, stop, step) :
print(i)
์ฌ์ (dictionary)
[ ์ฝ๋ ]
my_dictionary = {
5: 25, # key-value pair(ํค-๊ฐ ์)
2: 4,
3: 9
}
print(my_dictionary[3])
Aliasing
[ ์ฝ๋ ]
x = [2, 3, 5, 7, 11]
y = x
y[2] = 4
print(x)
print(y)
[ ์ถ๋ ฅ๋ฌผ ]
[2, 3, 4, 7, 11]
[2, 3, 4, 7, 11]
- y๋ x์ ๊ฐ๋ช (alias)์ผ ๋ฟ์ด๊ธฐ ๋๋ฌธ์ x์ y์ ๋ฆฌ์คํธ๊ฐ ๋ชจ๋ ๋ณ๊ฒฝ
[ ์ฝ๋ ]
x = [2, 3, 5, 7, 11]
y = list(x)
y[2] = 4
print(x)
print(y)
[ ์ถ๋ ฅ๋ฌผ ]
[2, 3, 5, 7, 11]
[2, 3, 4, 7, 11]
- ์ฝ๋ 2์ด์์ y๋ x์ ๋ฆฌ์คํธ๋ฅผ ๋ณต์ ํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ y๋ง ๋ณ๊ฒฝ
๋ฆฌ์คํธ์ ๋ฌธ์์ด
1. ๊ณตํต์
- ์ธ๋ฑ์ฑ(Indexing) ๊ฐ๋ฅ
- for ๋ฐ๋ณต๋ฌธ ํ์ฉ ๊ฐ๋ฅ
- ์ฌ๋ผ์ด์ฑ ๊ฐ๋ฅ
- ๋ง์ ์ฐ์ฐ : ๋ง์ ์ "์ฐ๊ฒฐ"ํ๋ ์ฐ์ฐ
- len ํจ์ ๊ฐ๋ฅ
2. ์ฐจ์ด์
- ๋ฆฌ์คํธ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊ฟ ์ ์์ง๋ง, ๋ฌธ์์ด์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊ฟ์ ์์
- ๋ฐ๋ผ์ ๋ฆฌ์คํธ์ ๊ฐ์ด ์์ ๊ฐ๋ฅํ ์๋ฃํ์ 'mutable'ํ ์๋ฃํ์ด๋ผ๊ณ ๋ถ๋ฅด๊ณ , ๋ฌธ์์ด๊ณผ ๊ฐ์ด ์์ ๋ถ๊ฐ๋ฅํ ์๋ฃํ์ 'immutable'ํ ์๋ฃํ์ด๋ผ๊ณ ๋ถ๋ฆ
txtํ์ผ ์ฝ๊ธฐ์ ์ฐ๊ธฐ
# ํ์ผ ์ฝ๊ธฐ
with open('chicken.txt', 'r') as f:
for line in f:
print(line.strip())
# ํ์ผ ์ฐ๊ธฐ
with open('new_file.txt', 'w') as f: # write์ ๋ฎ์ด์ฐ๊ธฐ
f.write("Hello world!\n")
f.wrtie("My name is Codeit. \n")
with open('new_file.txt', 'a') as f: # append๋ ์ถ๊ฐ
f.write("Hello world!\n")
f.wrtie("My name is Codeit. \n")
