๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

4๏ธโƒฃ Python/Python ์ •๋ฆฌ4

[Python] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€์ด ์‹œ ํ•„์š”ํ•œ ์ฃผ์š” ํŒ (sys.setrecursionlimit(), sys.stdin.readline()) ๋ฌธ์ œ๋ฅผ ๋งŽ์ด ํ’€์–ด๋ณด๋ฉด์„œ ๋ชฐ๋ž๋˜,,! ์‰ฝ์ง€๋งŒ ์ค‘์š”ํ•œ ํŒ๋“ค์„ ๊ฐ„๋‹จํžˆ ์ •๋ฆฌํ•ด๋ณด๊ณ  ์žˆ๋‹ค. ๐Ÿ“ ์žฌ๊ท€ ๊นŠ์ด ์ œํ•œ - sys.setrecursionlimit() ํŒŒ์ด์ฌ์€ ๊ธฐ๋ณธ์œผ๋กœ ์žฌ๊ท€ ๊นŠ์ด๋ฅผ 1000์œผ๋กœ ์ œํ•œํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์žฌ๊ท€๋ฅผ ๋” ๊นŠ๊ฒŒ ๋Œ๋ฆฌ๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ด ์ œํ•œ์„ ํ’€์–ด์ค˜์•ผ ํ•œ๋‹ค. ํ‘ธ๋Š” ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค. sys ๋ชจ๋“ˆ์„ importํ•˜๊ณ , setrecursionlimit ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. import sys sys.setrecursionlimit(10000) ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€ ๋•Œ ์ด์œ  ์—†์ด ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค๋ฉด ์ด๊ฒƒ์„ ์ƒ๊ฐํ•ด๋ด์•ผ ํ•  ๋“ฏ ํ•˜๋‹ค. ๐Ÿ“ ์ž…๋ ฅ - input() / sys.stdin.readline() ์ž…๋ ฅ ๋ฐ›์„ ๋‚ด์šฉ์ด ๋ณ„๋กœ ์—†๋‹ค๋ฉด input ํ•จ์ˆ˜๋กœ๋„ ์ถฉ๋ถ„ํ•˜์ง€๋งŒ, ์—ฌ๋Ÿฌ ์ค„์˜ ์ž…๋ ฅ์„ ๋งŽ์ด ๋ฐ›์•„์•ผ ํ•œ๋‹ค๋ฉด sys.. 2022. 1. 30.
[Python] ์–•์€ ๋ณต์‚ฌ vs ๊นŠ์€ ๋ณต์‚ฌ (feat. mutable, immutable ๊ฐ์ฒด) ๋ฐฑ์ค€์„ ํ’€๋‹ค๊ฐ€ ํŒŒ์ด์ฌ์€ ๋ณ€์ˆ˜๋ฅผ ๋Œ€์ž…ํ•  ๋•Œ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๊ฐ€ ์ข€ ๋‹ค๋ฅด๊ฒŒ ํ• ๋‹น๋˜๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ์•Œ์•„๋ณด๋‹ˆ mutable, immutable ๊ฐ์ฒด์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ์ ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„,, ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ณต๋ถ€ํ•˜๊ณ  ์“ฐ๋Š” ๊ธ€ ใ€ฐ๏ธ ๐Ÿ“ mutable ๊ฐ์ฒด์™€ immutable ๊ฐ์ฒด์˜ ๋น„๊ต ํŒŒ์ด์ฌ์—์„œ ๊ฐ์ฒด๋Š” mutable, immutable๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋Š”๋ฐ, list / set / dict ๋“ฑ์€ mutable ๊ฐ์ฒด, bool / int / str ๋“ฑ์€ immutable ๊ฐ์ฒด์ด๋‹ค. ๐Ÿ‘‰ ๊ตฌ๋ถ„ ๋ฐฉ๋ฒ• list ์ฒ˜๋Ÿผ ํ•˜๋‚˜ ํ•˜๋‚˜์˜ ์š”์†Œ๋ฅผ ๋ฐ”๊ฟ”์„œ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ์ฒด๋Š” mutable, str์ฒ˜๋Ÿผ ํ•˜๋‚˜ ํ•˜๋‚˜์˜ ์š”์†Œ๋งŒ์„ ๋ฐ”๊ฟ” ์ €์žฅํ•  ์ˆ˜ ์—†๋Š” ๊ฐ์ฒด๋Š” immutable์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์‰ฝ๋‹ค. ์•„๋ž˜ ์ฝ”๋“œ์— list, str์„ ๋Œ€ํ‘œ๋กœ mutable .. 2022. 1. 30.
[Python] ๋ฆฌ์ŠคํŠธ ๊ด€๋ จ ํ•จ์ˆ˜ ์ด์ •๋ฆฌ! ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑํ•˜๋Š” ๋ฒ• ๋ถ€ํ„ฐ ์‚ญ์ œ, ์ˆ˜์ •, ์—ฐ์‚ฐ ๋“ฑ์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ž์ฃผ! ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜๋“ค์„ ๋ชจ๋‘ ์ •๋ฆฌํ•ด์„œ ์—…๋กœ๋“œํ•œ๋‹ค. ๐Ÿ“Œ ์ƒ์„ฑ """ 1์ฐจ์› ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ """ # ๋น„์–ด์žˆ๋Š” ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ a = [] b = list() print(a, b) # [] [] # ๋ฐ˜๋ณต๋œ ๊ฐ’ ์ €์žฅํ•˜์—ฌ ์ƒ์„ฑ c = [0] * 10 print(c) # [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] # ๋‹ค์–‘ํ•œ ํƒ€์ž…์„ ํ•œ ๋ฆฌ์ŠคํŠธ์— ์ €์žฅํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅ d = ['a', 0, True] # ๋ฒ”์œ„ ์ง€์ •ํ•ด์„œ ์ƒ์„ฑ e = list(range(5)) f = list(range(1, 5)) g = list(range(1, 5, 2)) print(e, f, g) # [0, 1, 2, 3, 4] [1, 2, 3, 4] [1, 3] # map ํ•จ์ˆ˜.. 2021. 11. 15.
[Python] ์ž…์ถœ๋ ฅ ์ •๋ฆฌ python์ด ์ด์ œ ์ต์ˆ™ํ•ด์ง€๋ ค๊ณ  ํ•˜๋Š”์ค‘,,!์ด๋ผ ๋” ํ™•์‹คํ•˜๊ฒŒ ๊ณต๋ถ€ํ•˜๊ธฐ ์œ„ํ•ด ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜๋“ค์ด๋‚˜ ์–ธ์–ด ์‚ฌ์šฉ ๋ฐฉ๋ฒ•, ๋ฐ˜ํ™˜ ํƒ€์ž… ๋“ฑ์„ ์˜ˆ์ œ๋กœ ์ •๋ฆฌํ•ด์„œ ์—…๋กœ๋“œํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์ž…์ถœ๋ ฅ๋ถ€ํ„ฐ ์‹œ์ž‘โ—๏ธ ๐Ÿ“Œ ์ž…๋ ฅ """ input ํ•จ์ˆ˜๋Š” ์ž…๋ ฅ๋˜๋Š” ๋ชจ๋“  ๊ฒƒ์„ ๋ฌธ์ž์—ด๋กœ ์ทจ๊ธ‰! """ a = input() print(a) # in: 1 -> out: 1 b = int(input()) print(b) # in: 1 -> out: 1 c = input("์ž…๋ ฅ: ") # ํ”„๋กฌํ”„ํŠธ ๋„์›Œ์„œ ์ž…๋ ฅ ๋ฐ›๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅ """ split ํ•จ์ˆ˜ : ๊ณต๋ฐฑ ๋“ฑ ์–ด๋–ค ์ž…๋ ฅ์„ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ ์„œ ์ž…๋ ฅ๋ฐ›์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฆฌ์ŠคํŠธ ํ˜•ํƒœ๋กœ ๋ฐ˜ํ™˜ => ๋ฌธ์ž์—ด.split([[sep=]'๊ตฌ๋ถ„์ž'], [[maxsplit=]๋ถ„ํ•  ํšŸ์ˆ˜]) ํ˜•ํƒœ๋กœ ์‚ฌ์šฉ! (1) ๊ตฌ๋ถ„์ž ์ƒ.. 2021. 11. 15.