Tuple
Tuple์ ์ฌ๋ฌ ๋ถ๋ถ์์ List์ ์๋นํ ์ ์ฌํ์ง๋ง, List์ ๋ฌ๋ฆฌ ๊ฐ์ ์ถ๊ฐ, ์์ , ์ญ์ ํ ์ ์๋ค.
์ด์ธ์๋ ๋์ผํ ๋ฐ์ดํฐ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉด , List๋ณด๋ค ๋ฉ๋ชจ๋ฆฌ ์ ์ฅ๊ณต๊ฐ์ ์ ๊ฒ ์ฌ์ฉํ๊ณ ์ธ๋ฑ์ฑ ์๋๋ ๋ ๋น ๋ฅด๋ค.
numbers = (1,2,3,4)
print(numbers) → (1,2,3,4)
Tuple์ ()๋ฅผ ์ฌ์ฉํด ์์ฑํ ์ ์๋ค.
Tuple์ ์์๊ฐ ํ๋๋ง ์์ ๋๋ ๊ดํธ์ ์ ๋ฌด์ ์๊ด์์ด ์ฝค๋ง(,)๋ฅผ ๊ผญ ์ฐ์ด์ค์ผ ํ๋ค.
Tuple์ ์ถ๊ฐ, ์์ , ์ญ์ ๋ฅผ ํ ์ ์๊ธฐ ๋๋ฌธ์ append๋ extends ๊ฐ์ ์์ ์ด๋ ์ถ๊ฐ, ์ญ์ ๋ฅผ ํ๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
์ธํฉํน
์์ ๋ค์ด์๋ ์์๋ค์ ์ฌ๋ฌ ๊ฐ์ ๋ณ์์ ๋๋ ์ ๋์ ํ๋ ๊ฒ
numbers = (1,2,3)
number1,number2,number3 = numbers
print(number1,number2,number3) → 1 2 3
๋ง์ฝ ์ธํฉํนํด์ผํ ๊ฐ์๊ฐ ๋ณ์์ ๊ฐ์๋ณด๋ค ๋ง๋ค๋ฉด Error๊ฐ ๋ฐ์ํ๋ค.
์ด๋ด ๋๋ ๋จ๋ ์๋ฆฌ์ ๋จ๋ ๊ฐ๋ค์ ๋ด์์ฃผ๋ ๋ณ์๋ฅผ ๋ง๋ค๊ฑฐ๋
๋๋ ์์คํฐ๋ฆฌ์คํฌ(*)๋ฅผ ์ฌ์ฉํด์ ๋จ์ ์์ ์ ์ฒด๋ฅผ ๋ฆฌ์คํธ์ ๋ด์์ ์ฌ์ฉํ ์ ์๋ค.
numbers = 1,2,3,4
number1,number2,*number3 = numbers
print(number1,number2,number3) → 1 2 [3, 4]
Tuple์ ๊ฐ์ ์ถ๊ฐํ ์ ์์๊น?
์ถ๊ฐํ ์๋ ์์ง๋ง , ์ถ๊ฐํ ๊ฒ์ฒ๋ผ ๋ณด์ด๊ฒ ํ ์๋ ์๋ค.
numbers = 1,2,3,4
numbers += 5, 6,
print(numbers) → (1, 2, 3, 4, 5, 6)
์ ํํ ์ฃผ์ ๊ฐ์ ํ์ธํ๋ id ํจ์๋ฅผ ํตํด ํ์ธ์ ํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
numbers = 1,2,3,4
print(id(numbers)) → 1645939313456
numbers += 5, 6,
print(id(numbers)) → 1645939138880
์ถ๊ฐํ ๊ฒ์ด ์๋๋ผ ์๋ก์ด ๊ฐ์ฒด๋ฅผ ์์ฑํ์ฌ ์ฐธ์กฐ๋ฅผ ํ๊ณ ์๋ ๊ฒ์ด๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก ๋์ผํ tuple์ด ์๋, ์๋ก์ด tuple์ ๋ง๋ค๊ณ ๊ทธ ์์ ๊ฐ์ ๋ฃ๋ ๊ฒ์ด๋ค.
Dictionary
key์ ๊ฐ์ด ์์ ์ด๋ฃจ๋ ์๋ฃ๊ตฌ์กฐ
people = {
"name":"ํ๊ธธ๋",
"phone":"010-0000-0000"
}
print(people["name"],people["phone"])
→ ํ๊ธธ๋ 010-0000-0000
์ด๋ ๊ฒ key๋ง ์ ๋ ฅํ๋ฉด ํด๋นํ๋ ๊ฐ์ด ์ถ๋ ฅ์ด ๋๋ค.
๋ ผ๋ฆฌํ์ด key๊ฐ์ ์์ ๊ฒฝ์ฐ 0๊ณผ 1์ ๊ฐ๊ธ์ ํผํด์ผ ํ๋ค.
0์ False, 1์ True๋ก ์ธ์ํ๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ๊ฐ์ด ์ถ๋ ฅ๋ ์๋ ์๋ค.
์ถ๊ฐ์ ์ญ์
coffee = {
"Java":2500,
"Americano":2500,
"Latte":3000
}
coffee["Moca"] = 3000
print(coffee) → {'Java': 2500, 'Americano': 2500, 'Latte': 3000, 'Moca': 3000}
del coffee["Americano"]
print(coffee) → {'Java': 2500, 'Latte': 3000, 'Moca': 3000}
coffee.pop("Latte")
print(coffee) → {'Java': 2500, 'Moca': 3000}
์ถ๊ฐ๋ coffee์์ ์๋ก์ด key์ ๊ฐ์ ์ ๋ ฅํ๋ฉด ์์์ ์ถ๊ฐ๋๋ค.
์ญ์ ๋ del๊ณผ pop๋ฉ์๋๋ฅผ ์ฌ์ฉํด ์ญ์ ํ ์ ์๋ค.
dictionary ๋ฉ์๋
get() = key๋ก ๊ฐ ํ์ธ
coffee = {
"Java":2500,
"Americano":2500,
"Latte":3000
}
coffee["Moca"] = 3000
print(coffee.get("Java")) → 2500
get()์ด๋ผ๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์๋ ๊ฐ์ ํ์ธํ ์ ์๋ค.
์ธ์ ๊ฐ์ผ๋ก ๋๊ฐ์ด key๋ฅผ ์ ๋ ฅํด์ฃผ๋ฉด ๋๋ค.
keys() = ์์ ์๋ key ๋ชจ๋ ํ์ธ
coffee = {
"Java":2500,
"Americano":2500,
"Latte":3000
}
coffee["Moca"] = 3000
print(coffee.keys()) → dict_keys(['Java', 'Americano', 'Latte', 'Moca'])
values() = ์์ ์๋ ๊ฐ ๋ชจ๋ ํ์ธ
coffee = {
"Java":2500,
"Americano":2500,
"Latte":3000
}
coffee["Moca"] = 3000
print(coffee.values()) → dict_values([2500, 2500, 3000, 3000])
items() = ํค์ ๊ฐ ์์ Tuple๋ก ๋ฐํ
coffee = {
"Java":2500,
"Americano":2500,
"Latte":3000
}
coffee["Moca"] = 3000
print(coffee.items()) → dict_items([('Java', 2500), ('Americano', 2500), ('Latte', 3000), ('Moca', 3000)])
Dictionary ๋ํ in๊ณผ not in ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
์งํฉ ( Set )
์งํฉ์ ์์๊ฐ ์ ํด์ ธ ์์ง ์๊ณ , ์ค๋ณต์ ํ์ฉํ์ง ์๋๋ค.
week = {"์์์ผ" , "ํ์์ผ" , "์์์ผ" , "๋ชฉ์์ผ" , "๊ธ์์ผ" , "ํ ์์ผ" , "์ผ์์ผ"}
print(week)
→ {'๋ชฉ์์ผ', '๊ธ์์ผ', 'ํ ์์ผ', '์์์ผ', '์์์ผ', 'ํ์์ผ', '์ผ์์ผ'}
→ {'์ผ์์ผ', '๋ชฉ์์ผ', '์์์ผ', '๊ธ์์ผ', 'ํ์์ผ', 'ํ ์์ผ', '์์์ผ'}
add() = ์งํฉ์ ์์๋ฅผ ์ถ๊ฐ
week = {"์์์ผ" , "ํ์์ผ" , "์์์ผ" , "๋ชฉ์์ผ" , "๊ธ์์ผ" , "ํ ์์ผ" , "์ผ์์ผ"}
week.add("ํ์์ผ")
print(week)
→ {'ํ์์ผ', '์ผ์์ผ', '๊ธ์์ผ', '์์์ผ', '์์์ผ', '๋ชฉ์์ผ', 'ํ ์์ผ'}
add()๋ก "ํ์์ผ"์ ์ถ๊ฐํ์ง๋ง ์ถ๋ ฅ๋๋ ๊ฒฐ๊ณผ๋ ๋ณ๊ฒฝ์ด ์๋ค. ์งํฉ์ ์ค๋ณต์ ํ์ฉํ์ง ์๊ธฐ ๋๋ฌธ์
"ํ์์ผ"์ด ์ถ๊ฐ๋์ง ์์ ๊ฒ์ด๋ค.
add()๋ ์ซ์ , ๋ฌธ์ , bool , Tuple์ ์ถ๊ฐ๊ฐ ๊ฐ๋ฅํ์ง๋ง,
List๋ Dictionary ๊ฐ์ ๊ฒฝ์ฐ๋ ์ถ๊ฐ๊ฐ ๋ถ๊ฐ๋ฅํ๋ค.
False์ 1 , True์ 0์ ๊ฐ์ด ์ฌ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์ ์ถ๊ฐ๊ฐ ์๋๋ค.
week = {"์์์ผ" , "ํ์์ผ" , "์์์ผ" , "๋ชฉ์์ผ" , "๊ธ์์ผ" , "ํ ์์ผ" , "์ผ์์ผ"}
week.add(("์ผ์ฃผ์ผ",))
print(week) → {('์ผ์ฃผ์ผ',), 'ํ์์ผ', '๊ธ์์ผ', '๋ชฉ์์ผ', '์์์ผ', 'ํ ์์ผ', '์์์ผ', '์ผ์์ผ'}
์ด๋ ๊ฒ Tuple๋ ์ถ๊ฐ๊ฐ ๊ฐ๋ฅํ์ง๋ง Tupleํ์ ๊ทธ๋๋ก ์ ์ฅ๋๋ค. ์์๋ง ๋ฐ๋ก ์ถ๊ฐํ ๊ฒฝ์ฐ update()๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
update() = Tuple์ ์์๋ง ์งํฉ์ ์์๋ก ์ถ๊ฐ
week = {"์์์ผ" , "ํ์์ผ" , "์์์ผ" , "๋ชฉ์์ผ" , "๊ธ์์ผ" , "ํ ์์ผ" , "์ผ์์ผ"}
week.update(("์ผ์ฃผ์ผ",))
print(week) → {'์ผ์์ผ', '๋ชฉ์์ผ', '์์์ผ', '์ผ์ฃผ์ผ', 'ํ์์ผ', '์์์ผ', '๊ธ์์ผ', 'ํ ์์ผ'}
update๋ฅผ ํตํด Dictionary๋ ์ถ๊ฐ๊ฐ ๊ฐ๋ฅํ๊ธด ํ์ง๋ง key๊ฐ๋ง ์ถ๊ฐ๊ฐ ๋๋ค. ket์ ๊ฐ์ ์ถ๊ฐ๊ฐ ๋์ง ์๋๋ค,
Set
List๋ Tuple ๊ฐ์ ์ด๋ฐ Sequence์๋ฃํ์ ์งํฉ์ผ๋ก ๋ณํํ ๋ ์ฌ์ฉํ๋ ํจ์
week = set(["์์์ผ" , "ํ์์ผ" , "์์์ผ" , "๋ชฉ์์ผ" , "๊ธ์์ผ" , "ํ ์์ผ" , "์ผ์์ผ"])
print(week) → {'ํ์์ผ', '์์์ผ', '๊ธ์์ผ', '๋ชฉ์์ผ', 'ํ ์์ผ', '์ผ์์ผ', '์์์ผ'}
์งํฉ์ผ๋ก ํ๋ ์ฐ์ฐ
a = {1,2,3,4,5}
b = {3,4,5,6,7}
print(a | b) #ํฉ์งํฉ = ๋ ์งํฉ์ ๋ชจ๋ ์์๋ฅผ ํฉํ ์งํฉ
→ {1,2,3,4,5,6,7}
print(a & b) #๊ต์งํฉ = ๋ ์งํฉ์์ ๋ ์งํฉ์ด ๊ณตํต์ผ๋ก ๊ฐ์ง๊ณ ์๋ ์์
→ {3,4,5}
print(a - b) #์ฐจ์งํฉ = A๋ผ๋ ์งํฉ์์ B๋ผ๋ ์งํฉ์ ์๋ ์์๋ฅผ ๋บ ์งํฉ
→ {1,2}
remove() = ์์๋ฅผ ์ญ์
a = {1,2,3,4,5}
b = {3,4,5,6,7}
a.remove(4)
print(a) → {1,2,3,5}
True๋ False๋ฅผ ์ด์ฉํด 0์ด๋ 1์ ์ง์ธ ์๋ ์๋ค.
'๐จ๏ธ Backend > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Python]elif ๋ฐ ์กฐ๊ฑด๋ฌธ ์ค์ต (0) | 2022.09.01 |
---|---|
[Python]Inputํจ์ ๋ฐ ์กฐ๊ฑด๋ฌธ if (0) | 2022.08.30 |
[Python]List (1) | 2022.08.28 |
[Python]๋ฌธ์์ด ๋ฉ์๋ (2) | 2022.08.28 |
[Python]๋ฌธ์์ด ์ธ๋ฑ์ฑ, ์ฌ๋ผ์ด์ฑ, ํฌ๋งคํ (0) | 2022.08.28 |