Leveraging Programming Languages: Python Lang.

m_ngyeongยท2025๋…„ 4์›” 7์ผ
0
post-thumbnail

10. Leveraging Programming Languages


Python Lang.

โœ… ๋ฌธ์ž์—ด ์Šฌ๋ผ์ด์‹ฑ์˜ step

s = "PythonRocks"
print(s[::2])

๐Ÿ–๏ธ PhRk
ํ•ด์„ค: ์ธ๋ฑ์Šค 0, 2, 4, ...

โœ… ๋ฌธ์ž์—ด ์Œ์ˆ˜ ์ธ๋ฑ์Šค ์Šฌ๋ผ์ด์‹ฑ

text = "abcdefghij"
print(text[-4:-1])

๐Ÿ–๏ธ ghi
ํ•ด์„ค: text[-4:-1] == text[6:9] => 'ghi'

โœ… ๋ฆฌ์ŠคํŠธ vs ํŠœํ”Œ

a = [1, 2, 3]
b = (1, 2, 3)
a[0] = 100
# b[0] = 100

print(a[0], b[0]) # ํŠœํ”Œ์€ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€

๐Ÿ–๏ธ 100, 1

โŒ ๋ฆฌ์ŠคํŠธ ์Šฌ๋ผ์ด์‹ฑ ๋ณต์‚ฌ

x = [1, 2, 3, 4]
y = x[:]
x[0] = 99
print(y[0])

๐Ÿ–๏ธ 1

  • ๋ฆฌ์ŠคํŠธ ์Šฌ๋ผ์ด์‹ฑ([:])์€ ์–•์€ ๋ณต์‚ฌ. ๋”ฐ๋ผ์„œ y๋Š” x์™€ ๋ถ„๋ฆฌ๋œ ์ƒˆ ๋ฆฌ์ŠคํŠธ์ž„
  • y๋Š” ๋ณต์‚ฌ๋ณธ์œผ๋กœ ์˜ํ–ฅ ์—†์Œ โˆด y = [1, 2, 3, 4]
  • x = [99, 2, 3, 4]

โŒ ๋ฌธ์ž์—ด ์Šฌ๋ผ์ด์‹ฑ: reverse

word = "DataScience"
print(word[::-1][:4])

๐Ÿ–๏ธ ecne
ํ•ด์„ค:

  • word[::-1] = 'ecneicSataD'
  • word[:4] = ์•ž 4๊ธ€์ž = 'ecne'

โŒ set

s = set("banana")
print(len(s))

๐Ÿ–๏ธ 3

  • set์€ ์ค‘๋ณต๋˜๋Š” ๊ฐ’์„ ์ œ๊ฑฐํ•จ
  • s = {'b', 'a', 'n'}

โŒ ๋”•์…”๋„ˆ๋ฆฌ ํ‚ค ํƒ€์ž…

d = {}
d[1] = "int"
d[1.0] = "float"
print(d[1])

๐Ÿ–๏ธ float

  • 1๊ณผ 1.0์€ ๊ฐ™์€ ํ‚ค๋กœ ๊ฐ„์ฃผ๋จ (== ๋น„๊ต ๊ฒฐ๊ณผ๊ฐ€ True, hash๋„ ๊ฐ™์Œ)
    ๋”ฐ๋ผ์„œ float์œผ๋กœ ๋ฎ์–ด์”€

โœ… ๋ถˆ๋ณ€ ํŠœํ”Œ + ๊ฐ€๋ณ€ ๋ฆฌ์ŠคํŠธ

x = (1, 2, [3, 4])
x[2].append(5)
print(x)

๐Ÿ–๏ธ (1, 2, [3, 4, 5])

  • x[2]= [3,4]

โŒ ๋ฆฌ์ŠคํŠธ ๊ณฑํ•˜๊ธฐ ๋ณต์‚ฌ ๋ฐฉ์‹

a = [[0]] * 3
a[0][0] = 100
print(a)

๐Ÿ–๏ธ [[100], [100], [100]]

  • [[0]] * 3:
    [[0]] ๋ฆฌ์ŠคํŠธ ๊ฐ์ฒด๋ฅผ 3๋ฒˆ ๋ฐ˜๋ณตํ•ด์„œ ์ฐธ์กฐํ•œ ๊ฒƒ
    ์ฆ‰, ๋‚ด๋ถ€์˜ 3๊ฐœ์˜ ๋ฆฌ์ŠคํŠธ๋Š” ๋ชจ๋‘ ๊ฐ™์€ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ•จ (id ๊ฐ’ ๋™์ผ)
    a = [[0], [0], [0]]
  • a[0][0] = 100:
    ์ด๊ฑด ๋‚ด๋ถ€ ๋ฆฌ์ŠคํŠธ์˜ ์ฒซ ๋ฒˆ์งธ ์›์†Œ๋ฅผ 100์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ
    ๊ทธ๋Ÿฐ๋ฐ ๋‚ด๋ถ€ ๋ฆฌ์ŠคํŠธ๋Š” ์ „๋ถ€ ๊ฐ™์€ ๊ฐ์ฒด๋‹ˆ๊นŒ, ๋ชจ๋“  ๋ฆฌ์ŠคํŠธ์— ๋™์‹œ์— ๋ฐ˜์˜๋จ
  • โ— ์™œ ํ‹€๋ฆฌ๊ธฐ ์‰ฌ์šธ๊นŒ?
    *๋Š” ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ ๊ธฐ์กด ๊ฐ์ฒด์— ๋Œ€ํ•œ ์ฐธ์กฐ๋ฅผ ๋ฐ˜๋ณตํ•ด!
    ๊ทธ๋ž˜์„œ ๋‚ด๋ถ€ ๋ฆฌ์ŠคํŠธ๋“ค์ด ๋…๋ฆฝ์ ์ด์ง€ ์•Š์Œ

โŒ ๋ฌธ์ž์—ด๊ณผ bool, int ๋ณ€ํ™˜

print(bool("False"), int("False" == "false"))

๐Ÿ–๏ธ True, 0
=>

  • "False" == "false" โ†’ False โ†’ int(False) = 0

๐Ÿ” ์ฝ”๋“œ ํ๋ฆ„ ๋ถ„์„

  • bool("False"):
    • ํŒŒ์ด์ฌ์—์„œ ๋นˆ ๋ฌธ์ž์—ด("")์€ False์ด๊ณ , ๊ทธ ์™ธ ๋ฌธ์ž์—ด์€ ๋ชจ๋‘ True
    • ๊ฒฐ๊ณผ๋Š”: True (๋น„์–ด ์žˆ์ง€ ์•Š์Œ)
  • "False" == "false":
    • ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ํ•จ โ†’ "False"์™€ "false"๋Š” ๋‹ค๋ฆ„
    • ๊ฒฐ๊ณผ๋Š”: False
  • int(False):
    • False๋Š” ํŒŒ์ด์ฌ์—์„œ ์ •์ˆ˜ 0์œผ๋กœ ๋ณ€ํ™˜๋จ
    • True๋Š” 1, False๋Š” 0
profile
สšศ‰ษž

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