Python ๐Ÿ“‘

Seoyul Kimยท2020๋…„ 7์›” 24์ผ
0

Python

๋ชฉ๋ก ๋ณด๊ธฐ
16/16

for๋ฌธ

continue vs pass

  • continue๋Š” ๋‹ค์Œ ๋ฌธ์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  ๋ฐ˜๋ณต๋ฌธ ์„ ๋ˆ๋‹ค.
  • pass ๋Š” ๋‹ค์Œ ๋ฌธ์„ ์‹คํ–‰

List

remove vs pop vs del

  • del a[0] : ํŠน์ • ์ธ๋ฑ์Šค๋ฅผ ์‚ญ์ œํ•œ๋‹ค.

  • a.pop(1) : ๋งˆ์ง€๋ง‰ ์š”์†Œ ๋˜๋Š” ํŠน์ • ์ธ๋ฑ์Šค์˜ ์š”์†Œ๋ฅผ ์‚ญ์ œ ํ›„ return

  • a.remove(1) : ์ธ๋ฑ์Šค๊ฐ€ ์•„๋‹Œ ํŠน์ • ๊ฐ’์„ ์ฐพ์•„์„œ ์‚ญ์ œํ•˜๋Š”๋ฐ ์ค‘๋ณต๋œ ๊ฐ’์ด ์žˆ๋‹ค๋ฉด ๊ฐ€์žฅ ์ฒ˜์Œ ๊ฐ’์œผ๋ฅด ์‚ญ์ œํ•œ๋‹ค.

stack(LIFO)

  • append(), pop() ์‚ฌ์šฉ
  • ์—ฌ๊ธฐ์„œ pop(0)์„ ์‚ฌ์šฉํ•˜๋ฉด queue๊ฐ€ ๋œ๋‹ค.
  • ๋ฆฌ์ŠคํŠธ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ

queue(LILO)

  • insert(0, ์š”์†Œ), pop() ์‚ฌ์šฉ
  • append(), pop(0) ์‚ฌ์šฉ
  • ํšจ์šธ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ใ…์„œ ๋ฑ(dequeue, double ended queue) ์ž๋ฃŒํ˜• ์‚ฌ์šฉ
  • ๋ฑ์€ ์–‘ ๋์ชฝ์—์„œ ์ถ”๊ฐ€/์‚ญ์ œ๊ฐ€ ๊ฐ€๋Šฅํ•œ ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค.
from collections import dequeue

a = dequeue([10, 20, 30])

a.append(500)

a.popleft()
a.popright()

ํŠน์ • ์ธ๋ฑ์Šค

  • ๊ฐ™์€ ๊ฐ’์ด ์—ฌ๋Ÿฌ๊ฐœ์ผ ๊ฒฝ์šฐ ๊ฐ€์žฅ ์ฒ˜์Œ ๊ฐ’์„ ์ฐพ๋Š”๋‹ค.
a.index(20)

ํŠน์ • ๊ฐ’ ๊ฐœ์ˆ˜ ๊ตฌํ•˜๊ธฐ

a.count(3)

reverse

  • ์š”์†Œ์˜ ์ˆœ์„œ๋ฅผ ๋ฐ˜๋Œ€๋กœ ๋’ค์ง‘๋Š”๋‹ค.
a.reverse()

sort vs sorted

  • ์ž‘์€ ์ˆœ์„œ๋Œ€๋กœ ์ •๋ ฌ
  • ๋‘˜ ๋ชจ๋‘ ์ •๋ ฌํ•ด์ฃผ๋Š” ํ•จ์ˆ˜์ง€๋งŒ sort๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€๋งŒ, sorted ํ•จ์ˆ˜๋Š” ์ •๋ ฌ๋œ ์ƒˆ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.
a.sort()
a.sort(reverse=True)

sorted(b)

clear()

  • ๋ฆฌ์ŠคํŠธ์˜ ๋ชจ๋“  ์š”์†Œ ์‚ญ์ œ
a.clear()

del a[:]

๋ฆฌ์ŠคํŠธ ํ• ๋‹น๊ณผ ๋ณต์‚ฌ

a = [1.2.3.4]

b = a.copy()

index์™€ ์š”์†Œ ํ•จ๊ป˜ ์‚ฌ์šฉ

for index, value in ennumerate(a, start=1)
for index, value in ennumerate(a, 1)

์ตœ๋Œ€,์ตœ์†Ÿ๊ฐ’, ํ•ฉ๊ณ„

min(a)
max(a)
sum(a)

๋ฆฌ์ŠคํŠธ ํ‘œํ˜„์‹

a = [i for i in range(10)]
a = [i*2 for i in range(10)]
a = [i*2 for i in range(10) if i%2==0]
a = [i*j for j in range(2,10) for i in range(1,10)]

a = [[0 for j in range(2)] for i in arnge(3)]
a = [0]*2 for i in range(3)

map

  • ๋ฆฌ์ŠคํŠธ์˜ ์š”์†Œ๋ฅผ ์ง€์ •๋œ ํ•จ์ˆ˜๋กœ ์ฒ˜๋ฆฌํ•ด์ค€๋‹ค.

  • ์›๋ณธ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ์ƒˆ ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ

  • map์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฐ์ฒด๋Š” ์ดํ„ฐ๋ ˆ์ดํ„ฐ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€์ˆ˜ ์—ฌ๋Ÿฌ๊ฐœ์— ์ €์žฅํ•˜๋Š” ์–ธํŒจํ‚น์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

 a = [1,2,3,4]
 
 a = list(map(int,a))

โœ”๏ธ ์–ธํŒจํ‚น์ด๋ž€?
ํŒจํ‚นํ–ˆ๋˜ ํŒŒ์ผ์€ ํ‘ธ๋Š” ๊ฒƒ์œผ๋กœ, ์••์ถ•๋œ ์ฝ”๋“œ๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ๊ฐ€์„œ ์‹คํ–‰์„ ํ•˜๊ฒŒ ๋˜๋ฉด ์••์ถ•์„ ํ•ด์ œํ•˜๋Š” ๋ฃจํ‹ด์„ ๊ฑฐ์นœ ๋‹ค์Œ ์›๋ณธ ์†Œ์Šค๋ฅผ ์‹คํ–‰ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ ๊ทธ๋•Œ ์›๋ณธ ์†Œ์Šค ์‹œ์ž‘์ ์„ ์žก์•„์„œ ํ•ด๋‹น ๋ถ€๋ถ„์—์„œ ๋คํ”„๋ฅผ ๋œจ๋Š” ๊ฒƒ
์ฆ‰, ์••์ถ•์ด ํ•ด์ œ๋œ ์ƒํƒœ์˜ ์ฝ”๋“œ๋ฅผ ๋คํ”„ ๋œจ์ง€๋งŒ ์‹œ์ž‘์ ์„ ์ฐพ๋Š” ๋‹ค๋Š” ๊ฒƒ์€ ๊ฐ•๋ ฅํ•œ ํŒจ์ปค์ผ์ˆ˜๋ก ์–ด๋ ต๋‹ค.

๋ฌธ์ž์—ด method

๋ฌธ์ž์—ด ๋ฐ”๊พธ๊ธฐ

a.replace('๋ฐ”๊ฟ€๋ฌธ์ž์—ด', '์ƒˆ๋ฌธ์ž์—ด')

๋ฌธ์ž ๋ฐ”๊พธ๊ธฐ

table = str.maketrans('๋ฐ”๊ฟ€๋ฌธ์ž', '์ƒˆ๋ฌธ์ž')

๋ฌธ์ž์—ด ๋ถ„๋ฆฌ

a.split(',')

๊ตฌ๋ถ„์ž ๋ฌธ์ž์—ด๊ณผ ๋ฌธ์ž์—ด ๋ฆฌ์ŠคํŠธ ์—ฐ๊ฒฐ

''.join(a)

๋Œ€์†Œ๋ฌธ์ž ๋ณ€๊ฒฝ

a.upper()
a.lower()

๊ณต๋ฐฑ ์‚ญ์ œ

a.lstrip('์‚ญ์ œํ• ๋ฌธ์ž๋“ค')
a.rstrip()
a.strip()

๋ฌธ์ž์—ด ์œ„์น˜ ์ฐพ๊ธฐ

  • ํŠน์ • ๋ฌธ์ž์—ด์„ ์ฐพ์•„์„œ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ๋ฌธ์ž์—ด์ด ์—†์œผ๋ฉด -1์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • ์™ผ์ชฝ์—์„œ๋ถ€ํ„ฐ ๋ฌธ์ž์—ด์„ ์ฐพ๋Š”๋ฐ ๊ฐ™์€ ๋ฌธ์ž์—ด์ด ์–ด๋ ค๊ฐœ์ผ ๊ฒฝ์šฐ ์ฒ˜์Œ ์ฐพ์€ ๋ฌธ์ž์—ด์˜ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
a.find('ap')
a.index('ap')

#์˜ค๋ฅธ์ชฝ๋ถ€ํ„ฐ ๊ฒ€์ƒ‰
a.rfind('ap')
a.rindex('ap')

๋ฌธ์ž์—ด ๋„ฃ๊ธฐ

'i am %s'%'maria'

name = maria
'i am %s' % name

format

  • ์ธ๋ฑ์Šค ์ƒ๋žต์‹œ format์— ์ง€์ •ํ•œ ์ˆœ์„œ๋Œ€๋กœ ๋“ค์–ด๊ฐ„๋‹ค.
'hello, {์ธ๋ฑ์Šค๊ฐ’}'.format('world')

a = 'python'
f'hello{a}'

Dictionary

ํ‚ค-๊ฐ’ ์Œ ์ถ”๊ฐ€

x={}

x.setdefault('e')
x.setdefault('e', 100)

#์žˆ์œผ๋ฉด ์ˆ˜์ • ์—†์œผ๋ฉด ์ถ”๊ฐ€
x.update(e=2)
x,update([[2,'two'], [3,'three']])
x.update([zip([1,2], ['one', 'tow']))

์‚ญ์ œ

  • pop ์ด์šฉ์‹œ ํ‚ค ์žˆ์œผ๋ฉด ๊ฐ’ ์‚ญ์ œํ•˜๊ณ  ๋ฐ˜ํ™˜ํ•˜์ง€๋งŒ ํ‚ค๊ฐ€ ์—†์„์‹œ ๋ฐ˜ํ™˜ํ•  ๊ธฐ๋ณธ๊ฐ’์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
x.pop('z',0)
del x[ํ‚ค]

#์ž„์˜์˜ ํ‚ค-๊ฐ’ ์Œ ์‚ญ์ œ
#๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ ํ‚ค-๊ฐ’ ์Œ์„ ์‚ญ์ œํ•œ๋‹ค.
x.popitem()

#๋ชจ๋“  ํ‚ค-๊ฐ’์Œ ์‚ญ์ œ
x.clear()

์กฐ๊ฑด๋ฌธ์„ ์‚ฌ์šฉํ•œ ์‚ญ์ œ

  • for ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ๋Š” ์‚ญ์ œํ•  ์ˆ˜ ์—†๋‹ค
x = {key:value for key, value in x.items() if value!=20}

ํ‚ค์˜ ๊ฐ’ ๊ฐ€์ ธ์˜ค๊ธฐ

x.get('a')
x.get('a', 0)

ํ‚ค-๊ฐ’ ์Œ ๋ชจ๋‘ ๊ฐ€์ ธ์˜ค๊ธฐ

x.items() #ํ‚ค-๊ฐ’ ์Œ ๋ชจ๋‘ ๊ฐ€์ ธ์˜จ๋‹ค
x.keys()  # ํ‚ค๋ฅผ ๋ชจ๋‘ ๊ฐ€์ ธ์˜จ๋‹ค
x.values() #๊ฐ’์„ ๋ชจ๋‘ ๊ฐ€์ ธ์˜จ๋‹ค.

๋ฆฌ์ŠคํŠธ์™€ ํŠœํ”Œ๋กœ ๋”•์…”๋„ˆ๋ฆฌ ๋งŒ๋“ค๊ธฐ

key = [1,2,3,4]

#์‹คํ–‰์‹œ key์˜ ์š”์†Œ๋“ค์„ ํ‚ค๋กœ ๊ฐ–๋Š” ๋”•์…”๋„ˆ๋ฆฌ ์ƒ์„ฑ
x = dict.fromkeys(key)

0๊ฐœ์˜ ๋Œ“๊ธ€