ν‹°μŠ€ν† λ¦¬ λ·°

πŸ›1 : μœ μ‚¬ν•œ μœ ν˜•μ˜ 문제λ₯Ό ν•΄κ²°ν•  수 μžˆλ„λ‘ νŠΉμ • μž‘μ—…μ„ μˆ˜ν–‰ν•˜λŠ” λͺ…λ Ήλ¬Έμ˜ 집합을 단일 μ‹λ³„μžλ‘œ κ΅¬μ„±ν•œ κ°œλ…μ€?
β‘  ν•¨μˆ˜
β‘‘ 인터프리터
β‘’ 파일
β‘£ λͺ…λ Ή λΈ”λŸ­


πŸ›2 : line 클래슀의 μΈμŠ€ν„΄μŠ€ m의 멀버 __len을 10으둜 μˆ˜μ •ν•˜κΈ° μœ„ν•œ μ˜¬λ°”λ₯Έ ν‘œν˜„μ€?

class line :
    def __init__(self, length) :
    	self.__len = length
    def get_length(self) :
    	return self.__len
    def set_length(self, length) :
    	self.__len = length

β‘  m.__len = 10
β‘‘ m.len = 10
β‘’ m.set_length(10)
β‘£ m.set_length() = 10
≫ __ 둜 μ‹œμž‘ν•˜λŠ” private 데이터 ν•„λ“œλŠ” μ™ΈλΆ€μ—μ„œ μ ‘κ·Ό λΆˆκ°€
≫ setter λ˜λŠ” λ³€κ²½μžλΌ λΆˆλ¦¬λŠ” λ©”μ†Œλ“œλ₯Ό 톡해 μˆ˜μ •ν•΄μ•Ό 함


πŸ›3 : math λͺ¨λ“ˆ μ‚¬μš©μ„ μœ„ν•œ 빈 칸의 μ˜¬λ°”λ₯Έ ν‘œν˜„μ€?

# < 빈칸 >
a, b = 10, 20
area = 1 / 2 * a * b * sin(radians(60))
print(area)

β‘  import math
β‘‘ import math.sin, math.radians
β‘’ from sin, radians import math
β‘£ from math import sin, radians
≫ λͺ¨λ“ˆ μ‚¬μš© μ‹œ ν”„λ‘œκ·Έλž¨ λ‚΄λΆ€ μ„ μ–Έ ν•„μš”
≫ λ§Œμ•½ β‘  이면 math.sin() 와 같은 ν˜•μ‹μœΌλ‘œ μ‚¬μš©


πŸ›4 : νŠΉμ • λͺ©μ  λ˜λŠ” λΆ„μ•Όμ—μ„œ μ‚¬μš©λ˜λŠ” ν•¨μˆ˜, μƒμˆ˜ 및 클래슀λ₯Ό λͺ¨μ•„ 놓은 μ§‘ν•©μ²΄λŠ”?

β‘  λͺ¨λ“ˆ
β‘‘ νŒ¨ν‚€μ§€
β‘’ 라이브러리
β‘£ ν”„λ ˆμž„μ›Œν¬
≫ νŒ¨ν‚€μ§€μ™€ λΌμ΄λΈŒλŸ¬λ¦¬λŠ” λͺ¨λ“ˆλ³΄λ‹€ 더 큰 κ°œλ…


πŸ›5 : νŠΉμ •ν•œ λ°°μ—΄ μˆœμ„œλ‚˜ κ·œμΉ™μ μΈ μ˜λ―Έκ°€ μ—†λŠ”, μž„μ˜μ˜ μˆ˜λŠ”?
β‘  λ³΅μ†Œμˆ˜
β‘‘ μ‹œλ“œ
β‘’ λ‚œμˆ˜
β‘£ μ •μˆ˜


πŸ›6 : λŒ€κ·œλͺ¨ μ†Œν”„νŠΈμ›¨μ–΄ κ°œλ°œμ— μžμ›μ„ νˆ¬μž…ν•˜μ—¬ μ΄ˆκΈ°μ— μ˜ˆμƒν•œ κ²°κ³Όλ¬Ό κ΅¬ν˜„μ„ λͺ©μ μœΌλ‘œ
μ†Œν”„νŠΈμ›¨μ–΄ 전체 개발 과정을 ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€λ‘œ μ •μ˜ν•œ 것은?
β‘  ν”„λ‘œκ·Έλž¨ λΉŒλ“œ κ³Όμ •
β‘‘ μ†Œν”„νŠΈμ›¨μ–΄ λͺ¨λΈλ§
β‘’ μ†Œν”„νŠΈμ›¨μ–΄ 개발 라이프사이클
β‘£ DevOps


πŸ›7 : λ§€κ°œλ³€μˆ˜ κ°’μ˜ 합을 λ°˜ν™˜ν•˜λŠ” summation ν•¨μˆ˜μ— λŒ€ν•΄ λΉˆμΉΈμ— μ•Œλ§žμ€ ν‘œν˜„μ€?

def summation(*numbers) :
	sum = 0
	# [ 빈 칸 ]
		sum = sum + i
	return sum

β‘  i = numbers
β‘‘ for i in numbers
β‘’ i = i + 1
β‘£ if i in numbers (numbers에 i의 κ°’ 포함 μ—¬λΆ€ : true / false λ°˜ν™˜)
≫ λ§€κ°œλ³€μˆ˜μ— * κ°€ λΆ™μœΌλ©΄ κ°€λ³€ λ§€κ°œλ³€μˆ˜
≫ κ°€λ³€ λ§€κ°œλ³€μˆ˜ : (λ§€κ°œλ³€μˆ˜ 값이 0개, ν˜Ήμ€ μ—¬λŸ¬ 개일 수 있음 / 리슀트 ν˜•νƒœ)
≫ sum을 0으둜 λ¨Όμ € μ΄ˆκΈ°ν™”ν•΄μ•Ό 함


πŸ›8 : λ”•μ…”λ„ˆλ¦¬μ˜ κ΅¬μ„±μš”μ†Œμ™€ μš©μ–΄κ°€ μ˜¬λ°”λ₯΄κ²Œ 짝지어진 것은?

β‘  κ°’(value)
β‘‘ ν•­λͺ©(item)
β‘’ λ”•μ…”λ„ˆλ¦¬(dictionary)
β‘£ ν‚€(key)
≫ λ”•μ…”λ„ˆλ¦¬λŠ” μΌμ’…μ˜ λ¦¬μŠ€νŠΈμ™€ μœ μ‚¬ν•œ μ‹œν€€μŠ€ νƒ€μž…
(λ¦¬μŠ€νŠΈμ™€ λ‹€λ₯Έ 점은 각 ν•­λͺ©μ΄ "킀와 κ°’" μ„ΈνŠΈλ‘œ ꡬ성)
≫ 킀와 값이 묢인 ν•˜λ‚˜μ˜ ν•­λͺ© = item


πŸ›9 : λ§€κ°œλ³€μˆ˜λ‘œ μ „λ‹¬λœ 숫자λ₯Ό μ—­μˆœμœΌλ‘œ 좜λ ₯ν•˜λŠ” ν•¨μˆ˜μ΄λ‹€. λΉˆμΉΈμ— μ•Œλ§žμ€ μ—°μ‚°μžλŠ”?

def reverse_digit(number) :
    while number != 0 :
        digit = number % 10
        number = number '''빈칸''' 10
        print(digit, end = "")

β‘  ==
β‘‘ /
β‘’ %
β‘£ //
≫ ex ) number = 4321
whileλ¬Έ 첫 번째 반볡으둜 μ„€λͺ…을 ν•΄ 보자면, number % 10 ν•˜λ©΄ digitμ—λŠ” 1 λŒ€μž…
κ·Έ λ‹€μŒ number을 톡해 digit을 μ–»κΈ° μœ„ν•΄ numberλ₯Ό 10으둜 λ‚˜λˆ”, μ‹€μˆ˜λ₯Ό μ–»μ§€ μ•ŠκΈ° μœ„ν•΄ μ •μˆ˜ λ‚˜λˆ—μ…ˆ μ‚¬μš©.


πŸ›10 : 객체와 객체 μ‚¬μ΄μ˜ μƒν˜Έμž‘μš©μœΌλ‘œ ν”„λ‘œκ·Έλž¨μ„ κ΅¬μ„±ν•˜λŠ” ν”„λ‘œκ·Έλž˜λ° νŒ¨λŸ¬λ‹€μž„μ€?
β‘  λͺ…λ Ήν˜• ν”„λ‘œκ·Έλž˜λ°
β‘‘ 객체지ν–₯ ν”„λ‘œκ·Έλž˜λ°
β‘’ ꡬ쑰적 ν”„λ‘œκ·Έλž˜λ°
β‘£ 객체관계 ν”„λ‘œκ·Έλž˜λ°


khan_fp = open("Khan.txt", "r")

khan_mottos = # [ κ°€ ]

for motto in khan_mottos : 
	print(motto.strip())
    
# [ λ‚˜ ]

πŸ›11-1 : 파일 μ „μ²΄μ˜ λ‚΄μš©μ΄ 리슀트둜 μ €μž₯λ˜λ„λ‘ [κ°€]에 λ“€μ–΄κ°ˆ μ•Œλ§žμ€ ν‘œν˜„μ€?
β‘  readlines(khan_fp)
β‘‘ readlines()
β‘’ readlines(khan_mottos)
β‘£ khan_fp.readlines()


πŸ›11-2 : 파일 처리 ν›„ ν”„λ‘œκ·Έλž¨μ΄ μ’…λ£Œλ˜κΈ° μ „ νŒŒμΌμ— λŒ€ν•œ 마무리 μž‘μ—…μœΌλ‘œ (λ‚˜)에 λ“€μ–΄κ°ˆ μ˜¬λ°”λ₯Έ ν‘œν˜„μ€?
β‘  khan_fp.close()
β‘‘ khan_fp.write("close")
β‘’ close(khan_fp)
β‘£ μ—†μŒ


πŸ›12 : ν•¨μˆ˜μ˜ 처리 κ²°κ³Ό λ°˜ν™˜ μ‹œ μ‚¬μš©ν•˜λŠ” ν‚€μ›Œλ“œλŠ”?
β‘  break
β‘‘ result
β‘’ return
β‘£ continue


πŸ›13 : λ‹€μŒμ€ EDP ꡬ동 ꡬ쑰이닀. 이벀트 λ£¨ν”„μ˜ 역할에 λŒ€ν•œ μ˜¬λ°”λ₯Έ μ„€λͺ…은?
// EDP : Event-driven programming

β‘  이벀트 생성 μ—¬λΆ€ 확인 및 전달
β‘‘ 이벀트 μœ ν˜•μ— λ”°λ₯Έ 이벀트 생성
β‘’ 이벀트 μ €μž₯
β‘£ 이벀트 λ°œμƒμ— λ”°λ₯Έ μ½”λ“œ μ‹€ν–‰ (이벀트 ν•Έλ“€λŸ¬μ— λŒ€ν•œ λ‚΄μš©)


πŸ›14 : μ†Œν”„νŠΈμ›¨μ–΄ 개발 λΌμ΄ν”„μ‚¬μ΄ν΄μ—μ„œ μš”κ΅¬ 반영, μ˜ˆμƒ κ²°κ³Ό μœ μ‚¬ 검증 및 였λ₯˜ νŒŒμ•…μ΄ μ§„ν–‰λ˜λŠ” λ‹¨κ³„λŠ”?
β‘  κ³„νš
β‘‘ 뢄석
β‘’ κ΅¬ν˜„
β‘£ ν…ŒμŠ€νŠΈ


πŸ›15 : λ‹€μŒ 클래슀의 μΈμŠ€ν„΄μŠ€λ₯Ό μƒμ„±ν•˜λŠ” ν‘œν˜„μ€?

class robot :
    def __init__(self, name) : 
        self.name = name
        self.skill = []
    def create skill(self, skill) :
        self.skill.append(skill)
    def info(self) : 
        print('제 이름은', self.name, 'μž…λ‹ˆλ‹€!')

β‘  r1 = robot("androd1")
β‘‘ r1 = __init__("android1", , "cook")
β‘’ r1 = create_skill("cook")
β‘£ r1 = info()


πŸ›16 : 객체지ν–₯ ν”„λ‘œκ·Έλž˜λ°μ—μ„œ 객체의 κ΅¬μ„±μš”μ†Œκ°€ μ•„λ‹Œ 것은?
β‘  λ©”μ†Œλ“œ
β‘‘ 초기자 (__init__)
β‘’ 데이터 ν•„λ“œ
β‘£ λ‚΄μž₯ ν•¨μˆ˜
≫ κ°μ²΄λŠ” λ©”μ†Œλ“œμ™€ 데이터 ν•„λ“œμ˜ ν•©


πŸ›17 : μ•„λž˜λŠ” ꡬꡬ단 κ²Œμž„ μ†ŒμŠ€μ½”λ“œμ΄λ‹€. λ‹€μŒ λ¬ΌμŒμ— 따라 λ‹΅ν•˜μ‹œμ˜€.

a, bκ°€ 1~9 의 μž„μ˜μ˜ μ •μˆ˜κ°€ λ˜λ„λ‘ (κ°€), (λ‚˜)에 κ³΅ν†΅μ μœΌλ‘œ μ‚¬μš©λ˜λŠ” ν‘œν˜„μ€?
β‘  random.randrange(1, 9, 3)
β‘‘ random.randint(1, 9)
β‘’ random.choice(2, 9)
β‘£ random.random()


πŸ›18 : μ•„λž˜λŠ” 2차원 리슀트 board에 ν¬ν•¨λœ λͺ¨λ“  ν•­λͺ©μ„ 좜λ ₯ν•˜λŠ” ν•¨μˆ˜μ΄λ‹€. λ‹€μŒ λ¬ΌμŒμ— λ‹΅ν•˜μ‹œμ˜€.

def show_board() :
    for row in board : # 행을 κ°€μ Έμ˜΄
        for item in row : # ν–‰ μ•ˆμ˜ item ν•˜λ‚˜μ”© μ—΄ λ‹¨μœ„λ‘œ λŠμ–΄ κ°€μ Έμ˜΄
            print(item, end=" ")
# [ κ°€ ]

ν–‰λ§ˆλ‹€ μ›μ†Œμ˜ 값이 μƒˆλ‘œμš΄ λΌμΈμ—μ„œ 좜λ ₯λ˜λ„λ‘ (κ°€)의 print() μ•žμ— μ‚½μž…λ˜λŠ” λ“€μ—¬μ“°κΈ°μ˜ μΉΈ μˆ˜λŠ”?
(단, λ“€μ—¬μ“°κΈ° λ‹¨μœ„λŠ” 3칸이라고 κ°€μ •ν•œλ‹€.)
β‘  0
β‘‘ 3
β‘’ 6
β‘£ 9
≫ 기본적으둜 ν•¨μˆ˜λ₯Ό μ“Έ λ•Œ λ“€μ—¬μ“°κΈ° 3μΉΈ (class μ•ˆμ— 있음)


μ•„λž˜λŠ” νŒŒμΌμ— ν¬ν•¨λœ λ‹¨μ–΄μ˜ μΆœν˜„ 횟수λ₯Ό μ„ΈλŠ” ν”„λ‘œκ·Έλž¨μ΄λ‹€ λ‹€μŒ λ¬ΌμŒμ— 따라 λ‹΅ν•˜μ‹œμ˜€.

πŸ›19-1 : 

β‘  wdict.keys()
β‘‘ wdict.pop(word)
β‘’ wdict.popitem()
β‘£ wdict.get(word)


πŸ›19-2 : 

β‘  wdict[word]
β‘‘ wdict.get(word)
β‘’ wdict.pop(word)
β‘£ wdict.values()
≫ λ²ˆμ§€μˆ˜λ₯Ό μ°ΎλŠ” 것과 λΉ„μŠ·.
≫ λ”•μ…”λ„ˆλ¦¬λŠ” ν‚€ 값을 λ„£μœΌλ©΄ ν•΄λ‹Ή ν•­λͺ©μ΄ 가져와진닀.
ex) wdict[word] = 1 이면 ν‚€κ°€ word인 ν•­λͺ©μ— κ°’ 1이 μ„ΈνŒ….


πŸ›20 : μ•„λž˜λŠ” 3x3 2차원 리슀트 board 의 λŒ€κ°μ„  ν•­λͺ©μ΄ λͺ¨λ‘ X 기호둜 μ±„μ›Œμ Έ μžˆλŠ”μ§€ κ²€μ‚¬ν•˜λŠ” ν•¨μˆ˜μ΄λ‹€.

β‘  i, i
β‘‘ 3, 3 - i
β‘’ i, 3 - 1 - i
β‘£ 3 - i, i
≫ 첫 번째 XλŠ” (0,2), 두 번째 XλŠ” (1,1), μ„Έ 번째 xλŠ” (2,0)
0 , 3-1-0(=2)
1 , 3-1-1(=1)
2 , 3-1-2(=0)
≫ ν–‰μ˜ 값은 0μ—μ„œ 1μ”© 증가, μ—΄μ˜ 값은 2μ—μ„œ 1μ”© κ°μ†Œ!
β˜… range(i) : μ‹œμž‘ 값은 0이고 i보닀 1 μž‘μ€ μˆ˜κΉŒμ§€ 증가

λŒ“κΈ€
곡지사항
μ΅œκ·Όμ— 올라온 κΈ€
μ΅œκ·Όμ— 달린 λŒ“κΈ€
Total
Today
Yesterday
링크
TAG more
Β«   2025/05   Β»
일 μ›” ν™” 수 λͺ© 금 ν† 
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 31
κΈ€ 보관함