์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ
- ์ฝ๋ฉ
- ๋จธ์ ๋ฌ๋
- ๋ฐ์ดํฐ ๋ถ์
- ๋ ํ
- ์๋์ฐ ํจ์
- ์ฝ๋์นดํ
- ํ์ด์ฌ
- ์บ๊ธ
- TIL
- sqld
- ๋ฐ์ดํฐ๋ถ์
- ํ๋ก๊ทธ๋๋จธ์ค
- sql
- ๋ง์ผํ
- Today
- Total
SQL & Python Study
[D+10] ๋ฐ์ดํฐ ๋ถ์์ ์ํ ํ์ด์ฌ(2) - ๋ฆฌ์คํธ(list), ํํ(tuple), ๋์ ๋๋ฆฌ(dictionary) ๋ณธ๋ฌธ
[D+10] ๋ฐ์ดํฐ ๋ถ์์ ์ํ ํ์ด์ฌ(2) - ๋ฆฌ์คํธ(list), ํํ(tuple), ๋์ ๋๋ฆฌ(dictionary)
๊น์ฎ์ 2024. 4. 30. 16:41โ๏ธ STUDY INDEX
1. ๋ฆฌ์คํธ(list) ์ฌ์ฉ๋ฒ
2. ํํ(tuple) ์ฌ์ฉ๋ฒ
3. ๋์ ๋๋ฆฌ(dictionary) ์ฌ์ฉ๋ฒ
์ค๋์ ํ์ด์ฌ์ ์๋ฃ ์ ํ์ธ ๋ฆฌ์คํธ, ํํ, ๋์ ๋๋ฆฌ์ ๋ํด์ ๊ณต๋ถํ ๋ด์ฉ์ ์ ๋ฆฌํ๋ ค๊ณ ํด์.
๋ง์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๊ณ ๊ฐ๊ณต, ์กฐ์ํ๋ ๋ฐ์ ํ์ํ๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ์ค์ํ ๊ฐ๋ ์ด์์.
์ธ๋ถ์ ์ธ ๋ด์ฉ์ ์ ๋ฆฌํ๊ธฐ ์์, ํต์ฌ ๊ฐ๋ ๋ง ๋จผ์ ์์ฝํด ๋ดค์ต๋๋ค.
๐ ๋ฆฌ์คํธ, ํํ, ๋์ ๋๋ฆฌ ๊ฐ๋ ์ ๋ฆฌ
๋ฆฌ์คํธ [ list ] | ํํ ( tuple ) | ๋์ ๋๋ฆฌ { dictionary } | |
๊ธฐ๋ณธ ๊ตฌ์กฐ | [ ] ๋๊ดํธ ์ฌ์ฉ my_list = [1, 2, 3, 4] |
( ) ์๊ดํธ ์ฌ์ฉ my_tuple = (1, 2, 'sql') |
{ } ์ค๊ดํธ ์ฌ์ฉ my_dict = { 'key' : 'value', ... } |
ํน์ง | โ ์ํ์ค ์๋ฃํ โก ์์๊ฐ ์์ โข ๊ฐ๋ณํ ์๋ฃ *ํญ๋ชฉ ์ถ๊ฐ, ์ญ์ , ๋ณ๊ฒฝ ๊ฐ๋ฅ โฃ ์ธ๋ฑ์ค๋ก ๊ฐ์ ์ ๊ทผ |
โ ์ํ์ค ์๋ฃํ โก ์์๊ฐ ์์. โข ๋ถ๋ณํ ์๋ฃ โฃ ์ธ๋ฑ์ค๋ก ๊ฐ์ ์ ๊ทผ |
โ ํค(key), ๊ฐ(value) ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์๋ฃํ โก ์์๊ฐ ์์ โข ๊ฐ๋ณํ ์๋ฃ โฃ ํค(key)๋ก ๊ฐ์ ์ ๊ทผ |
ํจ๊ป ์ฌ์ฉํ๋ ๋ฉ์๋ | append( ) ํญ๋ชฉ ์ถ๊ฐ extend( ) ๋ค๋ฅธ ๋ฆฌ์คํธ ๋ชจ๋ ํญ๋ชฉ ์ถ๊ฐ insert( ) ํน์ ์์น์ ํญ๋ชฉ ์ฝ์ remove( ) ํน์ ๊ฐ ์ญ์ pop( ) ํน์ ์์น ๊ฐ ์ ๊ฑฐ ๋ฐ ๋ฐํ index( ) ํน์ ๊ฐ ์ธ๋ฑ์ค ์ฐพ๊ธฐ count( ) ํน์ ๊ฐ ๊ฐ์ ์ธ๊ธฐ sort( ) ๋ฆฌ์คํธ ํญ๋ชฉ ์ ๋ ฌ reverse( ) ๋ฆฌ์คํธ ํญ๋ชฉ ์ญ์์ผ๋ก |
count( ) index( ) *๋ถ๋ณํ ์๋ฃ๋ผ ํํ ์์ ์๋ ๊ฐ์ ์์๋ก ๋ณ๊ฒฝํ ์๊ฐ ์์. * ๊ฐ์ ๋ณ๊ฒฝํ๊ณ ์ถ๋ค๋ฉด, list()๋ก ๋ณ๊ฒฝํ ๋ค์ ๋ค์ ํํ๋ก! |
keys( ) ๋ชจ๋ key ๊ฐ ๊ฐ์ฒด ๋ฐํ values( ) ๋ชจ๋ values ๊ฐ์ฒด ๋ฐํ items( ) ํค-๊ฐ ์์ผ๋ก ๊ฐ์ฒด ๋ฐํ get( ) ์ง์ ๋ ํค์ ๊ฐ ๋ฐํ pop( ) ์ง์ ๋ ํค์ ๊ฐ ์ ๊ฑฐ, ๋ฐํ popitem( ) ๋ง์ง๋ง ํค-๊ฐ ์์ผ๋ก ์ ๊ฑฐ ๋ฐํ |
01. ๋ฆฌ์คํธ [ List ] ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ
โ ์ธ๋ฑ์ฑ(Indexing) : ํน์ ์์น์ ๊ฐ์ ์ ๊ทผํ๊ฑฐ๋ ์ถ์ถํ๊ธฐ
- ํ์ด์ฌ์ ๊ฐ์ฅ ์ฒซ๋ฒ์งธ ๊ฐ์ ์์น๊ฐ 1์ด ์๋, 0 ์ด์์.
- ์์๋ก๋ ๊ฐ์ ์ ๊ทผ ๊ฐ๋ฅํ๋ฉฐ, ๊ฐ์ฅ ๋ง์ง๋ง ๊ฐ์ ์์น๋ ๋ฌด์กฐ๊ฑด -1 ์ ๋๋ค.
my_lists = [55, 2, 9, 7, 5]
print(my_lists[0]) #์ฒซ๋ฒ์งธ ํญ๋ชฉ ์ถ๋ ฅ
print(my_lists[-1]) #๋ง์ง๋ง ํญ๋ชฉ ์ถ๋ ฅ
โก ๋ฆฌ์คํธ ๊ฐ ์ถ๊ฐ, ์ญ์ , ๋ณ๊ฒฝ, ์ ๋ ฌํ๊ธฐ
- append(), remove() ์๋ ์ถ๊ฐํ๊ฑฐ๋ ์ญ์ ํ๊ณ ์ ํ๋ ๊ฐ์ ์
๋ ฅํด์ผํด์.
๋ง์ฝ ์ญ์ ํ๊ณ ์ ํ๋ ์์น๋ฅผ ์ง์ ํ๋ฉด ์๋ฌ๊ฐ ๋จ! ๋ฌธ์๋ ์ซ์ ์์ ๋กญ๊ฒ ์ฝ์ , ์ญ์ ๊ฐ๋ฅ. - sort()๋ ๋ฌธ์์ ์ซ์๊ฐ ํจ๊ป ์์ ๋๋ ์ ๋ ฌํ์ง ๋ชปํด์.
๊ธฐ๋ณธ์ ์ผ๋ก ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ๋๋ฉฐ, ์ญ์์ผ๋ก ์ ๋ ฌํ๊ณ ์ถ๋ค๋ฉด reverse()๋ฅผ ์ฌ์ฉํด ์ฃผ์ธ์. - inset( ๊ฐ์ ์์น, ๊ฐ ) ํํ๋ก ์์ฑํด์ค์ผ ํด์. ์ง์ ํ ์์น์ ๊ฐ์ด ์๊น๋๋ค.
- ๋ง์ฝ ๋ฆฌ์คํธ์ ์ ์ฒด ๊ฐ์ ์ง์ฐ๊ณ ์ถ๋ค๋ฉด clear()๋ฅผ ์ฌ์ฉํด์ฃผ์ธ์. e.g. my_lists.clear()
my_lists = [55, 2, 9, 7, 5]
my_lists.append(10000) # ๊ฐ ์ถ๊ฐ
my_lists.insert(2, 4) #ํน์ ์์น์ ๊ฐ ์ถ๊ฐ
my_lists.remove(55) #ํน์ ๊ฐ ์ญ์
my_lists.sort() #์ ๋ ฌ
print(my_lists)
# ๊ฒฐ๊ณผ ๊ฐ : [2, 4, 5, 7, 9, 10000]
โข ์ธ๋ฑ์ฑ์ ํ์ฉํ ํน์ ๊ฐ ์ญ์ ๋๋ ๋ณ๊ฒฝ
- ๊ธฐ์กด remove() ๋ฉ์๋๊ฐ ํน์ ๊ฐ ์์ฒด๋ฅผ ์ญ์ ํ๋ค๋ฉด, del ๋ฆฌ์คํธ์ด๋ฆ [ ์์น ]๋ ํน์ ์์น์ ๊ฐ์ ์ญ์ ํฉ๋๋ค.
remove๋ ๊ฐ ์ค์ฌ ์ญ์ , del ๋ฆฌ์คํธ[]๋ ์์น ์ค์ฌ ์ญ์ - list_name [์์น] = '๋ณ๊ฒฝํ ๊ฐ' ์ธ๋ฑ์ฑ์ ํตํด ํน์ ์์น์ ๊ฐ์ ๋ณ๊ฒฝํ ์๋ ์์ด์.
my_lists2 = ['ํ์ด์ฌ', 'SQL', 'ํ๋ธ๋ก', 'ํ๋ค์ค']
del my_lists2[3] # ํน์ ์์น์ ๊ฐ ์ญ์
my_lists2[0] = '♥' # ํน์ ์์น์ ๊ฐ ๋ณ๊ฒฝ
print(my_lists2)
#๊ฒฐ๊ณผ ๊ฐ : ['♥', 'SQL', 'ํ๋ธ๋ก']
โฃ ์ฌ๋ผ์ด์ฑ : ํน์ ๋ฒ์์ ๊ฐ์ ์๋ฅด๊ฑฐ๋ ์ถ์ถํ๊ธฐ
- list_name [์์ ์์น : ๋ ์์น : ๊ฐ๊ฒฉ] ๊ตฌ์กฐ๋ก ์ฌ์ฉํด์.
my_lists3 = ['๊ฐ','๋','๋ค','๋ผ','๋ง','๋ฐ','์ฌ']
print(my_lists3[:]) #์ ์ฒด ๋ณต์ฌ
print(my_lists3[2:4]) #2๋ฒ์งธ ์์น์์ 4๋ฒ์งธ ์์น๊น์ง
print(my_lists3[:2]) #์์์ ์๋ต
print(my_lists3[4:]) #๋์ ์๋ต
print(my_lists3[0:7:2]) #0 ๋ถํฐ 7๋ฒ์งธ ์์น๊น์ง ๊ฐ๊ฒฉ 2๋ก ์ถ์ถํ๊ธฐ
# ๊ฒฐ๊ณผ ๊ฐ
#['๊ฐ', '๋', '๋ค', '๋ผ', '๋ง', '๋ฐ', '์ฌ']
#['๋ค', '๋ผ']
#['๊ฐ', '๋']
#['๋ง', '๋ฐ', '์ฌ']
#['๊ฐ', '๋ค', '๋ง', '์ฌ']
02. ํํ (tuple) ์ฌ์ฉ๋ฒ
- ํํ์ ๋ณ๊ฒฝํ ์ ์๋(๋ถ๋ณํ, immutable) ์ํ์ค ์๋ฃํ์ด์์.
- ํํ๋ ์์๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋ฆฌ์คํธ์ ๋์ผํ๊ฒ ์ธ๋ฑ์ฑ, ์ฌ๋ผ์ด์ฑ ์์ ์ด ๊ฐ๋ฅํด์.
- ๋ฆฌ์คํธ ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ ๋ถ๋ณํ์ผ๋ก ํํ ๋ด ๊ฐ์ ์ถ๊ฐ, ์ญ์ , ์์ ํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค.
- ํ์ง๋ง, โ ํํ์ ํฉ์น๊ฑฐ๋ ๋ฐ๋ณตํด์ ์๋ก์ด ํํ์ ์์ฑํ ์ ์๊ณ ,
- โก ๋ฆฌ์คํธ๋ก ํํ๋ฅผ ๋ณํํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ ๋ค์ ๋ค์ ํํ๋ก ๋ฐ๊ฟ ์ค ์๋ ์์ด์!
๋ฆฌ์คํธ๋ก ๋ฐ๊พธ๊ธฐ list(ํํ๋ช ), ํํ๋ก ๋ฐ๊พธ๊ธฐ tuple(๋ฆฌ์คํธ๋ช ) - ํํ๊ณผ ํจ๊ป ํ์ฉํ ์ ์๋ ๋ฉ์๋ count(), index()๋ ๊ดํธ ์์ '๊ฐ'์ ์ง์ ํด์ค์ผ ํฉ๋๋ค. ์์น ๋ฒํธ x
my_tuple = ('์์ ', '์ฌ์ฑ','๋ฏธ์ ', 'ํฌ์ ','์ฑ์ฌ','ํธ์ฃผ')
my_tuple2 = (31,33,40,100,21,19,33)
x = my_tuple + my_tuple2 #ํํ ํฉ์น๊ธฐ
print(my_tuple2.count(33)) #33 ๊ฐ์ ์ธ๊ธฐ
print(my_tuple.index('์ฑ์ฌ')) #'์ฑ์ฌ' ์ธ๋ฑ์ค ๋๋ฒ ์ถ๋ ฅํ๊ธฐ
print(my_tuple[0:3]) #์ฌ๋ผ์ด์ฑํ๊ธฐ
print(x) #ํฉ์ณ์ง ํํ ๋ถ๋ฌ๋ณด๊ธฐ
# ๊ฒฐ๊ณผ๊ฐ
# 2
# 4
# ('์์ ', '์ฌ์ฑ', '๋ฏธ์ ')
# ('์์ ', '์ฌ์ฑ', '๋ฏธ์ ', 'ํฌ์ ', '์ฑ์ฌ', 'ํธ์ฃผ', 31, 33, 40, 100, 21, 19, 33
03. ๋์ ๋๋ฆฌ {dictionary} ์ฌ์ฉ๋ฒ
- ๋์ ๋๋ฆฌ๋ {key : value} ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์๋ฃ ๊ตฌ์กฐ์์. ํค - ๊ฐ์ด ๋์๋๋ ํํ!
- ๊ฐ ํค๋ ์ ์ผํด์ผ ํ์ง๋ง, ๊ฐ์ ์ค๋ณต๋ ์ ์์ด์.
- ์์๊ฐ ์๊ณ , ํค๋ฅผ ํตํด ๊ฐ์ ์ฐพ์ ์ ์์ต๋๋ค. *์ธ๋ฑ์ฑ x, ์ฌ๋ผ์ด์ฑ x
- ๊ฐ๋ณํ ์๋ฃ๋ผ ๊ฐ์ ์์ , ๋ณ๊ฒฝ, ์ญ์ ํ ์ ์์ด์!
my_dict2 = {'name' : '๋ฌธ๋์',
'age': 38,
'job': '๊ต์ฌ'}
print(my_dict2.keys()) #ํค ๋ฐ์ดํฐ ์ถ๋ ฅ
print(my_dict2.values()) #๊ฐ ๋ฐ์ดํฐ ์ถ๋ ฅ
print(my_dict2['name']) #name์ ๊ฐ ์ฐพ๊ธฐ
my_dict2.pop('age') #ํค, ๊ฐ ์ ๊ฑฐ ํ ๊ฐ์ ๋ฐํ
my_dict2['address'] = '์์ธ' #ํค-๊ฐ ์์ ์ถ๊ฐ
print(my_dict2)
#๊ฒฐ๊ณผ๊ฐ
#dict_keys(['name', 'age', 'job'])
#dict_values(['๋ฌธ๋์', 38, '๊ต์ฌ'])
#๋ฌธ๋์
#{'name': '๋ฌธ๋์', 'job': '๊ต์ฌ', 'address': '์์ธ'}
2024. 4. 30
์ค๋์ ๊ณต๋ถ๋ ์ฌ๊ธฐ๊น์ง์ ๋๋ค.
์ฟผ๋ฆฌ ๊ตฌ์กฐ์ ๋ฌธ๋ฒ์ด ์ ํด์ ธ ์๋ SQL๊ณผ ๋ค๋ฅด๊ฒ ํ์ด์ฌ์ ๋น๊ต์ ํจ์ฌ ๋ ์์ ๋กญ๊ฒ ์ฝ๋๋ฅผ ์งค ์ ์๋ ์ธ์ด์ธ ๊ฒ ๊ฐ์์. ๊ธฐ์ด ๊ฐ์๋ผ ์ค์ต์ ๋์ผ๋ก๋ง ๋ณด๋ค๊ฐ, TIL์ ์์ฑํ๋ฉด์ ์ง์ ์ฝ๋ฉ์ ์น๋ฉด์ ๋๋ ค๋ณด๋๊น ์์ง์ ์ฌ์ฉ๋ฒ์ด ์ต์ํ์ง ์์์ ์ค๋ฅ๊ฐ ์์ฃผ ๋๋๋ผ๊ณ ์ใ ใ ... ์๋ฃํ ๋ค์ .ํจ์() ์ด๋ ๊ฒ ์ฐ๋ ๊ตฌ์กฐ๊ฐ ์์ง ๋ฏ์ค์ด์! ์์ผ๋ก๋ ๊น๋ถ์ง ๋ง๊ณ , ๊ณ์ ๋ฐ๋ผ ํ๋ฉด์ ๋นจ๋ฆฌ ํ์ด์ฌ์ด๋ผ๋ ์๋ก์ด ์ธ์ด๋ฅผ ์์ ์ตํ์ผ๊ฒ ์ต๋๋ค. SQL ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์ ๋ ์ ์ ๋์ด๋๊ฐ ๋์์ ํ๋ฒ์ ๋ชป ํ๊ฒ ๋ ์ํฉ์ด ์๊ธฐ๋๋ผ๊ณ ์ ใ ใ ์ด๋ ค์ ๋ ๋ฌธ์ ๋ค๋ ์ข ์ ๋ฆฌํด์ ํ๋ฒ ๊ธ์ ์จ๋ด์ผ๊ฒ ์ต๋๋ค! ๐