Python

    [Python] ์ •๊ทœํ‘œํ˜„์‹ sub

    ์ •๊ทœํ‘œํ˜„์‹์€ ๋ฌธ์ž์—ด์— ์กฐ๊ฑด์ด ์ฃผ์–ด์ง„ ๊ฒฝ์šฐ ์ ์šฉํ•˜๋ฉด ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ฝ”๋“œ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด์ „ ํ”„๋กœ์ ํŠธ์—์„œ ๋กœ๊ทธ์ธ์„ ๊ตฌํ˜„ํ•  ๋•Œ ์กฐ๊ฑด์— ๋”ฐ๋ฅธ ๋น„๋ฐ€๋ฒˆํ˜ธ ๊ฒ€์‚ฌ ์ฝ”๋“œ๋ฅผ ์ •๊ทœ์‹์„ ํ†ตํ•ด ์ˆ˜์›”ํ•˜๊ฒŒ ๊ตฌํ˜„ํ–ˆ๋˜ ๊ธฐ์–ต์ด ์žˆ๋‹ค. ๋†€๋ž๊ฒŒ๋„ ์นด์นด์˜ค ์ฝ”ํ…Œ์—๋„ ์ •๊ทœ์‹์„ ์ด์šฉํ• ๋งŒํ•œ ๋ฌธ์ œ๊ฐ€ ๊ฝค ๋‚˜์˜จ๋‹ค๊ณ  ํ•œ๋‹ค. ๊ฒธ์‚ฌ๊ฒธ์‚ฌ ๊ณต๋ถ€ํ•ด์•ผ์ง€. ์ •๊ทœํ‘œํ˜„์‹์€ ํŒŒ์ด์ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ re ํŒจํ‚ค์ง€๋ฅผ ์ด์šฉํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. import re re.sub(pattern, replacement, string) string์—์„œ pattern๊ณผ ์ผ์น˜ํ•˜๋Š” ๋ฌธ์ž์—ด์„ replacement๋กœ ์น˜ํ™˜ print(re.sub('\d{4}', 'XXXX', '010-1234-5678')) # 010-XXXX-XXXX ์ด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • pattern์„ ํฌํ•จํ•œ ๋ฌธ์ž์—ด์€ ์ œ๊ฑฐํ•˜๋Š” ๊ธฐ๋Šฅ๋„ ..

    [Python] ๋ฆฌ์ŠคํŠธ, 2์ฐจ์› ๋ฐฐ์—ด ์ •๋ ฌํ•˜๊ธฐ | sort()

    ํŒŒ์ด์ฌ์—๋Š” sort()๋ผ๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜๊ฐ€ ์กด์žฌํ•ด ๊ฐ„๋‹จํ•˜๊ฒŒ ์˜ค๋ฆ„์ฐจ์ˆœ, ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฆฌ์ŠคํŠธ ์ •๋ ฌ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. 1. ๋ฆฌ์ŠคํŠธ ์ •๋ ฌํ•˜๊ธฐ - ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๊ธฐ arr = [2,3,4,5,1] arr.sort() print(arr) # [1,2,3,4,5] - ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๊ธฐ arr = [2,3,4,5,1] arr.sort(reverse=True) print(arr) # [5,4,3,2,1] 2. 2์ฐจ์› ๋ฐฐ์—ด ์ •๋ ฌํ•˜๊ธฐ - ๊ธฐ๋ณธ sort() ์‚ฌ์šฉํ•˜๊ธฐ arr[i]๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. arr = [[2,3],[1,2],[0,4]] arr.sort() print(arr) # [[0, 4], [1, 2], [2, 3]] - ํŠน์ • ๊ฐ’ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌํ•˜๊ธฐ Case1. ํ–‰ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌํ•˜๊ธฐ..

    [Python] Collections - deque | ๊ฐœ๋…, ๋ฉ”์†Œ๋“œ, list์™€์˜ ์ฐจ์ด

    ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๋ณด๋ฉด ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” Collections ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ deque ํด๋ž˜์Šค์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž ! 1. Deque๋ž€? ์–‘๋ฐฉํ–ฅ์—์„œ ํ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ queue(ํ)๋Š” FIFO(First in, First out), ์ฆ‰ ๋จผ์ € ๋“ค์–ด๊ฐ„ ์›์†Œ๊ฐ€ ๋จผ์ € ๋‚˜์˜ค๋Š” ์„ ์ž…์„ ์ถœ ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. deque๋Š” ์–‘๋ฐฉํ–ฅ ํ์˜ ๊ตฌ์กฐ์ด๊ธฐ์— ์•ž, ๋’ค ์–‘์ชฝ ๋ฐฉํ–ฅ์—์„œ element ์ถ”๊ฐ€/์ œ๊ฑฐ๊ฐ€ ๊ฐ€๋Šฅํ•œ ์œ ์šฉํ•œ ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. 2. deque์˜ ๋ฉ”์†Œ๋“œ(Method) - append(x) : deque ์˜ค๋ฅธ์ชฝ์— x๋ฅผ ์ถ”๊ฐ€ from collections import deque d = deque('abc') # deque ์ƒ์„ฑ d.append(1) print(list(d)) # listํ˜•์œผ๋กœ ์ถœ๋ ฅ # ['a','b','c',1]..

    [Python] list B = A์™€ B = A[:]์˜ ์ฐจ์ด

    ํŒŒ์ด์ฌ์—์„œ list A์˜ ์›์†Œ์˜ ๊ฐ’์„ ๋‹ค๋ฅธ ๋ฆฌ์ŠคํŠธ์— ๊ทธ๋Œ€๋กœ ๋„ฃ์–ด์ฃผ๊ณ  ์‹ถ์„ ๋•Œ, A = [1,2,3] B = A A = [1,2,3] B = A[:] ์ด ๋‘ ๊ฐœ์˜ ์ฝ”๋“œ๋Š” ์–ผํ•๋ณด๋ฉด ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ๋‚˜ํƒ€๋‚ผ ๊ฒƒ ๊ฐ™์ง€๋งŒ (์‹ค์ œ๋กœ๋„ B = [1,2,3]์ด๋ผ๋Š” ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ์ดˆ๋ž˜ํ•˜๊ธด ํ•œ๋‹ค.) ์ฒซ ๋ฒˆ์งธ ๊ฒฝ์šฐ B๊ฐ€ A๋ฅผ ์ฐธ๊ณ ํ•˜๊ฒŒ ๋˜์–ด ์„œ๋กœ์˜ ๊ฐ’์— ์˜ํ–ฅ์„ ์ฃผ๊ฒŒ ๋œ๋‹ค. ๋ณ„๊ฐœ์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค๋ฉด์„œ ๊ฐ™์€ ์›์†Œ๋ฅผ ๋„ฃ์–ด์ฃผ๊ณ  ์‹ถ๋‹ค๋ฉด ๋‘ ๋ฒˆ์งธ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ž!

    [Python] itertools: permutations, combinations | ์ˆœ์—ด, ์กฐํ•ฉ

    permutations (์ˆœ์—ด) iterable ๊ฐ์ฒด์—์„œ n๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฝ‘์•„ ์ผ๋ ฌ๋กœ ๋‚˜์—ดํ•˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ product (์ค‘๋ณต์ˆœ์—ด) iterable ๊ฐ์ฒด์—์„œ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์—ฌ n๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฝ‘์•„ ์ผ๋ ฌ๋กœ ๋‚˜์—ดํ•˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ combinations (์กฐํ•ฉ) iterable ๊ฐ์ฒด์—์„œ n๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฝ‘์•„ ์ˆœ์„œ๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ๋‚˜์—ดํ•˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ combinations_with_replacement (์ค‘๋ณต์กฐํ•ฉ) iterable ๊ฐ์ฒด์—์„œ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์—ฌ n๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฝ‘์•„ ์ˆœ์„œ๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ๋‚˜์—ดํ•˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ ์ด๋ฅผ ์‚ฌ์šฉํ•œ ์˜ˆ์‹œ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค. from itertools import combinations, combinations_with_replacement, permutations, product data..

    [Python] 2์ฐจ์› ๋ฐฐ์—ด์—์„œ ์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’ ๊ตฌํ•˜๊ธฐ

    2์ฐจ์› ๋ฐฐ์—ด์˜ ๊ฒฝ์šฐ map ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ์ „์ฒด ๋ฆฌ์ŠคํŠธ์—์„œ ์ตœ๋Œ“๊ฐ’ / ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค. result = [[1,2,3,4,5],[5,6,7,8,9]] print(max(result)) # ์›์†Œ ๊ฐ’์˜ ํ•ฉ์ด ๊ฐ€์žฅ ํฐ ๋ฆฌ์ŠคํŠธ print(max(map(max,result))) # ์ตœ๋Œ€๊ฐ’ print(min(map(min,result))) # ์ตœ์†Œ๊ฐ’ ๋ฆฌ์ŠคํŠธ์˜ ์—ด์˜ ์ตœ๋Œ“๊ฐ’, ์ตœ์†Ÿ๊ฐ’์ด ๊ถ๊ธˆํ•˜๋‹ค๋ฉด ์•„๋ž˜์‹์ฒ˜๋Ÿผ ํ™œ์šฉํ•ด์ฃผ๋ฉด ๋œ๋‹ค. result = [[1,2,3,4,5],[5,6,7,8,9]] print(max(r[0] for r in result)) # 5 print(min(r[1] for r in result)) # 2

    [Python][Error] KeyError: 0

    Dictionary ์•ˆ์— ํ•ด๋‹นํ•˜๋Š” Key์˜ ๊ฐ’์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•˜๋Š” ์—๋Ÿฌ์ด๋‹ค.

    [Python] range()

    range(): ์—ฐ์†๋œ ์ˆ˜ ๋˜๋Š” ์ผ์ • ๊ฐ„๊ฒฉ์˜ ์—ฐ์†๋œ ์ˆ˜๋ฅผ ๋งŒ๋“œ๋Š” ํ•จ์ˆ˜ - 0 ~ (n-1)์˜ ์ˆ˜ range(n) - n ~ (m-1)์˜ ์ˆ˜ range(n,m) - n ~ (m-1) ์ค‘ step ๊ฐ„๊ฒฉ์œผ๋กœ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋ƒ„ range(n,m,step)