sally_analyst의 등록된 링크

키자드에 등록된 총 161개의 포스트를 확인하실 수 있습니다.

Naver Blog

[코딩테스트] 파이썬 QUIZ - set 함수

절기 매직이란 말 들어보셨나요? '입춘'이 지나고나니 부쩍 따뜻해진 게 정말 신기합니다. 부쩍 일교차가 크니 감기 조심하시구요. 열 네번째 퀴즈 시작하겠습니다:) 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : B 오늘은 파이썬 내장함수 set에 대해서 공부해보려고 해요. 개인적으로 이직을 위해 코딩테스트 공부를 하고 있는데, set을 이용하여 중복 제거를 해야하는 경우가 종종 있어서 오늘 퀴즈를 준비했습니다. set은 고등학교 수학시간에 많이 들어보셨쬬? 바로 집합을 의미합니다. 파이썬 set 함수는 중복되지 않은 원소를 얻고자 할 때 사용하는 python 내장 함수입니다. 주의하셔야 할 것은, 어려서 배운 집합은 { }로 표기했지만 파이썬에서 { }는 dict 선언하는 것이므로 [ ] 로

Naver Blog

[코딩테스트] 프로그래머스 - 문자 반복 출력 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 문자 반복 출력 [QUESTION] 문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요. [내 코드] def solution(my_string, n): answer = [] for i in my_string: answer.append(i*n) return ''.join(answer) [가장 좋아요 많이 받은 코드] def solution(my_string, n): return ''.join(i*n for i in my_string) 풀어나가는 과정과 생각은 같았지만 한 줄로 리턴할 수 있었습니다. answer이란 지역변수를 별도로 선언하지 않고도 문제를 해결하는 것이

Naver Blog

[코딩테스트] 프로그래머스 - 옷가게 할인 받기 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 옷가게 할인 받기 [QUESTION] 머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다. 구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요. [내 코드] def solution(price): if price >= 50*10000: return int(price*0.8) elif 30*10000 <= price < 50*10000: return int(price*0.9) elif 10*10000 <= price < 30*10000: return int(price*0.95) else: return int(price) [가장 좋아요 많이 받은 코드] def sol

Naver Blog

[코딩테스트] 프로그래머스 - 머쓱이보다 키 큰 사람 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 머쓱이보다 키 큰 사람 [QUESTION] 머쓱이는 학교에서 키 순으로 줄을 설 때 몇 번째로 서야 하는지 궁금해졌습니다. 머쓱이네 반 친구들의 키가 담긴 정수 배열 array와 머쓱이의 키 height가 매개변수로 주어질 때, 머쓱이보다 키 큰 사람 수를 return 하도록 solution 함수를 완성해보세요. [내 코드] def solution(array, height): answer = 0 for i in array: if i > height: answer += 1 return answer [가장 좋아요 많이 받은 코드] def solution(array, height): array.append(height) array.sort(reverse=True) return array.index(

Naver Blog

[코딩테스트] 프로그래머스 - 배열의 유사도 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 배열의 유사도 [QUESTION] 두 배열이 얼마나 유사한지 확인해보려고 합니다. 문자열 배열 s1과 s2가 주어질 때 같은 원소의 개수를 return하도록 solution 함수를 완성해주세요. [내 코드] def solution(s1, s2): answer = 0 for i in s1: for j in s2: if i == j: answer +=1 return answer [가장 좋아요 많이 받은 코드] def solution(s1, s2): return len(set(s1)&set(s2)); 이래서 저는 파이썬이라는 언어를 정말정말 사랑합니다. 교집합의 개수로 바로 구해버릴 수가 있었네요. 간결하고 깔끔함의 끝판왕.. 제가 이러한 코드를 작성할 수 있는 그 날까지 매일 발전해야겠습니다..

Naver Blog

[코딩테스트] 프로그래머스 - 제곱수 판별하기 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 제곱수 판별하기 [QUESTION] 어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요. [내 코드] def solution(n): return 1 if int(n**0.5)== n**0.5 else 2 [가장 좋아요 많이 받은 코드] def solution(n): return 1 if (n ** 0.5).is_integer() else 2 생각의 흐름은 비슷했으나 저는 int(n**0.5) == n**0.5 로 완전제곱수임을 확인했다면 가장 좋아요를 많이 받은 코드는 is_interger()을 이용하였네요. 주어진 수가 정수인지 판별하는 is_interger()

Naver Blog

[코딩테스트] 프로그래머스 - 숫자 비교하기 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 숫자 비교하기 [QUESTION] 정수 num1과 num2가 매개변수로 주어집니다. 두 수가 같으면 1 다르면 -1을 retrun하도록 solution 함수를 완성해주세요. [내 코드] def solution(num1, num2): return 1 if num1==num2 else -1 [가장 좋아요 많이 받은 코드] def solution(num1, num2): return 1 if num1==num2 else -1

Naver Blog

[코딩테스트] 프로그래머스 - 피자 나눠 먹기(1) (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 피자 나눠 먹기(1) [QUESTION] 머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요. [내 코드] import math def solution(n): return math.ceil(n/7) [가장 좋아요 많이 받은 코드] def solution(n): return (n - 1) // 7 + 1 저는 math 라이브러리를 활용하여 ceil을 통해 올림을 했고, 가장 좋아요를 많이 받은 코드는 (n-1)을 7로 나눈 몫에 1을 더해주었습니다. 라이브러리를 필요할 때 잘 사용하는 것이 좋은 코드인지, 아닌 것인지 판단이 어려운

Naver Blog

[코딩테스트] 프로그래머스 - 짝수 홀수 개수 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 짝수 홀수 개수 [QUESTION] 정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요. [내 코드] def solution(num_list): ev = len([i for i in num_list if i%2 ==0]) od = len([i for i in num_list if i%2 !=0]) return [ev, od] [가장 좋아요 많이 받은 코드] def solution(num_list): answer = [0,0] for n in num_list: answer[n%2]+=1 return answer 인덱스가 짝수일 때, 홀수일 때 1씩 더해주는 방법으로 짝수와 홀수의 개

Naver Blog

[코딩테스트] 프로그래머스 - 점의 위치 구하기 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 점의 위치 구하기 [QUESTION] 사분면은 한 평면을 x축과 y축을 기준으로 나눈 네 부분입니다. 사분면은 아래와 같이 1부터 4까지 번호를매깁니다. x 좌표와 y 좌표가 모두 양수이면 제1사분면에 속합니다. x 좌표가 음수, y 좌표가 양수이면 제2사분면에 속합니다. x 좌표와 y 좌표가 모두 음수이면 제3사분면에 속합니다. x 좌표가 양수, y 좌표가 음수이면 제4사분면에 속합니다. x 좌표 (x, y)를 차례대로 담은 정수 배열 dot이 매개변수로 주어집니다. 좌표 dot이 사분면 중 어디에 속하는지 1, 2, 3, 4 중 하나를 return 하도록 solution 함수를 완성해주세요. [내 코드] def solution(dot): if dot[0]*dot[1] > 0: return

Naver Blog

[파이썬실습] 파이썬으로 별 그리기 (예쁘게 색도 칠해볼까?)

[Mission] 반복문을 통해 별 그리기 turtle 모듈을 이용한다. line은 검은색, fill은 노란색으로 한다. from turtle import * import turtle as t color('black','yellow') n = int(input('별의 꼭짓점 개수를 입력하세요.: ')) t.shape('turtle') begin_fill() for i in range(n): t.forward(100) t.right((360 / n) * 2) t.forward(100) t.left(360 / n) end_fill() mainloop()

Naver Blog

[코딩테스트] 파이썬 QUIZ - 깊은 복사(Deep copy)

혼자 열심히 공부 겸 정보 공유 포스팅을 하지만 많은 분들이 공부하시는 데에 도움이 되고 있는지 알 수가 없어서 조금 아쉽습니다. 혹시라도 퀴즈를 함께 풀고 계시다면 소중한 댓글 하나 부탁드려요~.~ 조금 더 힘을 내서 다양한 퀴즈를 내볼 수 있도록 노력하겠습니다! 열두번째 퀴즈 시작할게요:) 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : D 오늘 퀴즈는 깊은 복사 관련 퀴즈입니다. 평소에 보던 퀴즈와 다르게 반환 값이 아닌 중간에 들어갈 코딩을 묻는 퀴즈에요:) 얕은 복사(Shallow Copy)는 '주소 값'을 복사한다는 의미하고, 깊은 복사(Deep Copy)는 '실제 값'을 새로운 메모리 공간에 복사하는 것을 의미한다고 지난 'Day11 - 얕은 복사' 포스팅에서 함께 공부 하였습니다

Naver Blog

[파이썬실습] 파이썬으로 오징어게임 로고 만들기

[Mission] 간절히 시즌2를 기다리는 Sally를 위해 오징어게임 로고 그리기 turtle 모듈을 이용한다. line은 검은색, fill은 실제 오징어게임 핑크색 hex코드(#FF3399)로 한다. from turtle import * color('black', '#FF3399') pensize(3) speed('normal') begin_fill() pu() setpos(-150, 0) pd() circle(50) pu() forward(100) pd() for i in range(4): forward(100) left(360/3) right(120) pu() forward(150) pd() for i in range(4): left(360/4) forward(100) end_fill() mainloop() 오징어게임 시즌2.. 얼른 나와주세요

Naver Blog

[코딩테스트] 파이썬 QUIZ - 딕셔너리 items() method

개인적으로 바쁜 일정이 있어서 조금 오랜만에 작성하는 퀴즈 포스팅입니다~ 열 세번째 퀴즈 시작하겠습니다! 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : C 오늘은 자료형 중 딕셔너리(사전형)의 item method에 대해 복습하는 퀴즈입니다. 우선 자료형에 대해 간단하게 복습해 볼게요. List (리스트) 파이썬에서 가장 많이 활용되는 시퀀스 자료형 중 하나 []로 표기하며 [] 내 요소를 콤마(,)로 구분 Tuple (튜플) 리스트와 비슷한 성질을 가지고 있지만, 요소의 값을 변경할 수 없음 ()로 표기하며 () 내 요소를 콤마(,)로 구분 데이터 변경이 안되므로 튜플로 만든 데이터에 대한 신뢰도가 높음 Dictionary (딕셔너리) 키(Key):값(Value) 쌍이 하나의 요소 딕셔너리

Naver Blog

[코딩테스트] 프로그래머스 - 각도기 (Lv.0)

이 문제는 프로그래머스 코딩테스트 Lv.0에 출제된 문제입니다. (문제 저작권은 프로그래머스에 있습니다) 직접 코드를 작성하고, 내 코드를 다른 코드와 비교하여 발전적인 사람이 되고자 합니다. 각도기 [QUESTION] 각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요. [내 코드] def solution(angle): if 0 < angle < 90: return 1 elif angle == 90: return 2 elif 90 < angle < 180: return 3 else: return 4 [가장 좋아요 많이 받은 코드] def solution(angle): return (angle//90) * 2 + (angle % 90 > 0) * 1 가장 좋아요

Naver Blog

[코딩테스트] 파이썬 QUIZ - 리스트 메소드(method)_append

오늘의 파이썬 퀴즈, 벌써 아홉번째 날입니다. 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ 공부 겸 공유 차원에서 퀴즈를 내고 있는데, 많은 분들에 봐주신다면 언젠가는 정답과 이유를 맞추는 이벤트도 열어보고 싶어요.. 그럴 날이 오겠죠?! 파이썬을 다뤄보고 싶은 초보자분들이 제 블로그를 통해 파이썬을 쉽게 생각하셨으면 하는 바람으로 오늘의 퀴즈 시작해보겠습니다 Answer : D 오늘 퀴즈는 파이썬 리스트 메소드 (List method)를 알아보려고 합니다. list.append(x) # 리스트에 값 추가 list.insert(index, x) # 리스트 특정 위치에 값 추가 list.remove(x) # 리스트에서 특정 값 제거 list.pop() # 리스트의 마지막 값 반환 후 제거 list.exten

Naver Blog

[코딩테스트] 파이썬 QUIZ - 리스트 메소드(method)_extend

벌써 한 주가 지나고 금요일입니다. 한 주 동안 공부하신 분들, 일 하신 분들 모두 고생하셨어요! 벌써 파이썬 퀴즈, 열번째 날입니다^^ 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : C 오늘 퀴즈는 '파이썬 아홉번째 퀴즈'에서 알아본 파이썬 리스트 메소드 (List method)를 알아보기 2탄입니다. list.append(x) # 리스트에 값 추가 list.insert(index, x) # 리스트 특정 위치에 값 추가 list.remove(x) # 리스트에서 특정 값 제거 list.pop() # 리스트의 마지막 값 반환 후 제거 list.extend(list2) # 리스트에 다른 리스트2 연결 list.count(x) # 리스트 값 x의 개수 카운트 list.index(x) # 리스트 값

Naver Blog

[데이터] 자료구조 - 힙(Heap)

힙(Heap)이란? 데이터에서 최댓값과 최솟값을 빠르게 찾기 위해 고안된 완전 이진 트리(Complete Binary Tree) 완전 이진 트리 : 노드를 삽입할 때부터 최하단 왼쪽 노드부터 차례대로 삽입하는 트리 힙을 사용하는 이유 배열에 데이터를 넣고, 최댓값과 최솟값을 찾으려면 시간 복잡도 O(n) 힙에 데이터를 넣고, 최댓값과 최솟값을 찾으면 시간 복잡도 간소화 우선순위 큐와 같이 최댓값 또는 최솟값을 빠르게 찾아야 하는 자료구조 및 알고리즘 구현에 활용 힙(Heap) 구조 최댓값을 구하기 위한 구조(Max Heap, 최대힙)와 최솟값을 구하기 위한 구조(Min Heap, 최소힙)으로 분류 힙은 다음 조건을 가진 자료구조 각 노드의 값은 해당 노드의 자식 노드가 가진 값보다 크거나 같다. (case. Max Heap) 각 노드의 값은 해당 노드의 자식 노드가 가진 값보다 작거나 같다. (case. Min Heap) 완전 이진 트리 형태 힙(Heap)과 이진 탐색 트리의 공통점

Naver Blog

[코딩테스트] 최대공약수와 최소공배수 구하기 - map 함수로 두 개 변수 입력받기

최대공약수와 최소공배수 구하기 [QUESTION] 두 개의 자연수를 입력 받아 최대공약수와 최소공배수 출력하는 프로그램을 작성합니다. 여러 가지 방법이 있지만 파이썬 math 모듈의 gcd, lcm 함수를 이용하여 간단하게 풀어보겠습니다. gcd는 최대공약수로 Greatest Common Divisor, lcm은 최소공배수로 Least Common Multiple를 의미합니다. 또한, 이 문제를 풀며 사용한 map 함수는 여러 요소에 하나의 함수를 한번에 대응시켜줄 수 있는 함수로 syntax는 다음과 같습니다. (저장할 변수) = map(function, iterable) map 함수는 input 함수와 함께 사용하는 경우가 많습니다. 문제에서 주어진 내장함수 사용을 위해 import math를 진행해주고 map 함수를 이용, 원하는 함숫값을 입력 받아 최대공약수와 최소공배수를 출력해줍니다. import math a, b = map(int, input().split()) print

Naver Blog

[코딩테스트] 피타고라스 정리 - 직각삼각형일까?

세 변의 길이 입력 받아 직각삼각형인지 판단하기 [QUESTION] 세 변의 길이를 입력 받아 직각삼각형인지 판단하여 결과를 출력하는 프로그램을 작성합니다. 오늘 문제를 풀기에 앞서 직각삼각형의 판단은 피타고라스 정리를 이용한다는 사실! 피타고라스 정리는 세 변의 길이를 a, b, c이고, 가장 긴 변의 길이가 c라고 가정한다면 a2 + b2 = c2 이 성립하는 것을 말합니다. 오늘은 세 변의 길이를 map 함수를 통해 입력 받지만, sorted를 통해 오름차순으로 정렬하여 입력한 변의 길이를 가지는 삼각형이 직각삼각형인지를 판단해 보았습니다. while True: a, b, c = sorted(list(map(int, input().split()))) if a == b == c == 0: break if c**2 == a**2 + b**2: print('직각삼각형입니다.') else: print('직각삼각형이 아닙니다')

Naver Blog

[코딩테스트] 파이썬 QUIZ - 얕은 복사(shallow copy)

설 연휴는 잘 보내고 오셨나요? 연휴가 끝나고 밀린 업무가 많아 이제 퀴즈 포스팅을 올립니다:) 긴 말 없이! 바로 열한번째 퀴즈 시작할게요:) 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : C 오늘 퀴즈는 다소 쉽다고 느껴지시죠~? 만약 오답을 내신 분이 계시다면 'B'를 선택하셨으리라고 짐작해봅니다. 오늘 퀴즈의 포인트는 얕은 복사(shallow copy)와 깊은 복사(deep copy)의 차이입니다. 얕은 복사(Shallow Copy)는 '주소 값'을 복사한다는 의미하고, 깊은 복사(Deep Copy)는 '실제 값'을 새로운 메모리 공간에 복사하는 것을 의미합니다. 따라서 얕은 복사의 경우, 주소 값을 복사하므로 참조하는 실제 값이 같게 됩니다. 이 개념이 중요한 이유는 변수에서 변수로

Naver Blog

[코딩테스트] 파이썬 QUIZ - len 함수와 for 문

오늘은 파이썬 퀴즈, 벌써 일곱번째 날입니다^^ 저와 함께 공부하는 파이썬 퀴즈가 이 포스팅 읽으시는 분들에게 파이썬과 친해지는 데 조금이나마 도움이 되길 바라며, 오늘의 퀴즈 시작해보겠습니다! 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : B 이번 퀴즈는 len 함수와 for 문에 대한 지식을 확인하는 퀴즈였습니다. 우선 파이썬 내장함수인 len 함수는 문자열의 길이를 구하기 위해서 사용합니다. 예제를 통해 확인해보면 >>> name = 'sally' >>> address = 'seoul' >>> like = 'chocolate' >>> print(len(name)) 5 >>> print(len(address)) 5 >>> print(len(like)) 9 그리고 파이썬 for 문은 반복문

Naver Blog

[파이썬실습] 파이썬으로 피라미드 만들기

[Mission] '*' 이용하여 피라미드 만들기 피라미드 만드는 함수 정의할 것 피라미드 높이 제한은 없음 def pyramid(n): for i in range(1, n+1): for j in range(1, 2*n): if i == n or j == n-i+1 or j == n+i-1: print('*', end='') else: print(' ', end='') print() pyramid(30) Sally와 함께하는 파이썬 source 공유/ 스터디가 유용하다면 공감 버튼 부탁 드려요

Naver Blog

[코딩테스트] 파이썬 QUIZ - 문자열 replace()

일주일 중 가장 피곤하다는 수요일이 돌아왔습니다. 모두 힘내시기 바라구요:) 오늘의 파이썬 퀴즈, 여덟번째 날입니다. 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : C 오늘 퀴즈는 파이썬 replace 함수에 관한 퀴즈입니다. replace는 문자열을 변경하는 함수이고 Syntax는 다음과 같습니다. 변수.replace(old, new, [count]) old : 현재 문자열에서 변경을 원하는 문자 new : 새로 바꿀 문자 count : 변경 횟수. 미입력 시 변수의 old 문자열 전체 변경 (기본값: -1) 예시를 통해 알아보면 다음과 같습니다. >>> sally = 'beautiful' >>> sally.replace('u', 'a') beaatifal >>> sally = 'beaut

Naver Blog

[데이터] 자료구조 - 링크드 리스트(Linked List)

자료구조 - 링크드 리스트(Linked List) 연결 리스트 배열은 순차적으로 연결된 공간에 데이터를 나열하는 구조 링크드 리스트는 떨어진 곳에 존재하는 데이터를 화살표로 연결해서 관리하는 데이터 구조 본래 C언어에서는 주요 데이터 구조, 그러나 파이썬은 리스트 타입이 링크드 리스트 기능 지원 주요 기능 노드(Node) : 데이터 저장 단위(데이터값 ,포인터)로 구성 포인터(Pointer) : 각 노드 안에서, 다음이나 이전 노드와의 연결 정보를 가지고 있는 공간 Node와 Node 연결 자료구조 링크드 리스트의 장단점 장점 미리 데이터 공간을 할당하지 않아도 됨 (배열은 미리 데이터 공간을 할당해야 하는 것이 단점) 단점 연결을 위한 별도 데이터 공간이 필요 → 저장 공간 효율이 높지 않음 연결 정보를 차즌ㄴ 시간이 필요하여 접근 속도가 느림 중간 데이터 삭제 시, 앞뒤 데이터 연결을 재구성해야하는 부가 작업 필요 다양한 링크드 리스트 구조 더블 링크드 리스트 (Double Li

Naver Blog

[데이터] 자료구조 - 해쉬(Hash)

해쉬(Hash) 구조 해쉬 테이블(Hash table) : 키(Key)에 데이터(Value)를 저장하는 데이터 구조 해쉬 테이블의 예 : 파이썬 딕셔너리(Dictionary) 타입 배열로 미리 Hash Table 사이즈만큼 생성 후 사용 알아두어야 할 용어 해쉬(Hash) : 임의 값을 고정 길이로 변환하는 것 해쉬 테이블(Hash Table) : 키 값의 여산에 의해 직접 접근이 가능한 데이터 구조 해싱 함수(Hashing Function) : Key에 대하여 산술 연산을 이용해 데이터 위치를 찾을 수 있는 함수 해쉬 값(Hash Value) or 해쉬 주소(Hash Address) : Key를 해싱 함수로 연산해서, 해쉬 값을 알아내고 해당 Key에 대한 데이터 위치를 일관성있게 찾을 수 있게 하는 것 슬롯(Slot) : 한 개의 데이터를 저장할 수 있는 공간 해쉬 테이블의 장단점 장점 데이터 저장/읽기 속도가 빠르다. 해쉬는 키에 대한 중복 여부 확인이 쉽다. 단점 저장 공간이

Naver Blog

[데이터] 자료구조 - 트리(Tree)

트리(Tree) 구조 트리 : Node와 Branch를 이용하여 사이클을 이루지 않도록 구성한 데이터 구조 탐색 알고리즘 구현을 위해 많이 사용 알아두어야 할 용어 Node : 트리에서 데이터를 저장하는 기본 요소 Root Node : 트리 맨 위의 노드 Level : 최상위 노드를 Level0으로 하였을 때, 하위 Branch로 연결된 노드의 깊이 Parent Node : 어떤 노드의 다음 레벨에 연결된 노드 Child Node : 어떤 노드의 상위 레벨에 연결된 노드 Leaf Node (Terminal Node) : Child Node가 하나도 없는 노드 Sibling (Brother Node) : 동일한 Paren Node를 가진 노드 Depth : 트리에서 Node가 가질 수 있는 최대 Level 이진 트리 이진 트리 : 노드의 최대 Branch가 2인 트리 이진 탐색 트리(Binary Search Tree, BST) : 이진 트리에 다음과 같은 조건이 추가된 트리 왼쪽 노드

Naver Blog

[코딩테스트] 파이썬 QUIZ - 리스트 슬라이싱(slicing)

주말 푹 쉬고 오셨나요? 월요일의 시작! 오늘의 파이썬 퀴즈, 여섯번째 날입니다. 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Sally와 함께 하는 여섯번째 퀴즈 시작합니다^^ Answer : D 오늘 퀴즈는 파이썬 리스트의 슬라이싱에 관한 퀴즈입니다. 슬라이싱은 'slicing = 나눈다'라고 생각하시면됩니다. 예제를 통해 슬라이싱에 대해 알아보면 >>> a = [1, 2, 3, 4, 5] >>> a[0:2] [1, 2] >>> a = [1, 2, 3, 4, 5] >>> b = a[:2] >>> c = a[2:] >>> b [1, 2] >>> c [3, 4, 5] 문제에서 List[2:4]를 모두 문자열 'a'로 변환했으므로 print(List)는 ['a', 'b', 'a', 'e']를 반환합니다. >

Naver Blog

[코딩테스트] 파이썬 QUIZ - 리스트 item 제거 방법

오늘은 파이썬 퀴즈, 세번째 날입니다. 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ 이번 문제는 두 개입니다:) Answer : A / D 파이썬에서 리스트에 저장된 값을 삭제하는 방법을 알아보겠습니다. 리스트에서 값 삭제를 위해서는 함수 사용 혹은 위치 또는 범위를 지정하면 됩니다. clear() : 리스트에 저장된 모든 item 삭제 pop(): index로 item 가져오면서 삭제 remove(): value로 item 삭제 item이 리스트에 여러개 있으면 가장 앞에 있는 것 하나만 삭제 del(): index, slicing 방법으로 item 삭제 예제를 통해 확인해보면 >>> sally = list(range(5)) >>> print(sally) [0, 1, 2, 3, 4] >>> sally.c

Naver Blog

[코딩테스트] 파이썬 QUIZ - 리스트에서 인덱스로 아이템 가져오기

오늘은 파이썬 퀴즈, 벌써 네번째 날입니다:) 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ 문제 들어가겠습니다~c Answer : C 지난 퀴즈 포스팅에서 '파이썬에서 리스트에 저장된 값 삭제'하는 방법 알아보았죠? pop() : index로 item 가져오면서 삭제합니다. 따라서 pop은 삭제하는 item을 리턴값으로 합니다. 여기서 중요한 것은 숫자 '1'을 삭제하며 리턴값으로 반환하는 것이 아니라 index로 item을 가지고 와야한다는 점의 유의해야 합니다. 따라서 이번 퀴즈에서는 num_list에서 Index[1]에 해당하는 '2'를 리턴값으로 반환하게 됩니다. >>> num_list = [3, 2, 1] >>> print(num_list.pop(1)) 2 오늘 퀴즈가 도움이 되셨다면 공감 버튼

Naver Blog

[코딩테스트] 파이썬 QUIZ - 문자열 find()

이번 한 주 알차게 보내셨나요? 오늘은 즐거운 토요일에 함께하는 파이썬 퀴즈, 다섯번째 날입니다:) 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답안 원하시는 분은 첫 번쩨 댓글에 정답만 올려둘테니 댓글 확인해주세요~ 문제 들어갑니다! Answer : A 오늘 퀴즈는 파이썬 문자열 find 함수에 대한 것입니다. Syntax는 다음과 같습니다. string.find(찾을 문자) string.find(찾을 문자, 시작 Index) string.find(찾을 문자, 시작 Index, 끝 Index) find method는 '찾을 문자' 혹은 '찾을 문자열'이 존재하는지 확인하고 찾는 문자가 존재하면 해당 위치 index를 반환하고 찾는 문자가 존재하지 않으면 -1을 반환합니다. 만약 찾는 문자나 문자열이 여러 개 있다면 맨 처음 찾는 문자의 index를 반환합니다. 예제를 통해

Naver Blog

[파이썬실습] 파이썬으로 크리스마스 트리 만들기:)

[Mission] '*' 이용하여 크리스마스 트리 만들기 크리스마스 트리 밑동 만들기 크리스마스 트리 높이는 입력 받을 것 크리스마스 트리 밑동과의 비율을 위해 높이에 제한 둘 것 line = int(input('4~30 사이에서 원하는 Tree 높이를 입력하세요. : ')) if 3 < line < 31 : for x in range(1, line * 2, 2): print((' ' * ((line * 2 - 1 - x) // 2)) + ('*' * x)) for y in range(1, 3): print(' ' * (line-2) + '***') else : print('잘못된 입력입니다. Tree 높이를 다시 입력해주세요.')

Naver Blog

[파이썬실습] 파이썬으로 로또 당첨되자~

[Mission] 5000원으로 로또 번호 추출하기 로또는 1부터 45까지의 숫자 중 6개를 임의 추출 로또 1게임은 1000원으로 종이 한 장에 5게임으로 이루어짐 로또 구매 후 출력된 종이에는 숫자가 오름차순으로 정렬 # 방법1 import random lotto = [] for i in range(5): num = random.sample(range(1, 46), 6) lotto.append(num) num.sort() print('이번 주에 혹시 내가..??') lotto # 방법2 lotto = [] for i in range(5): lotto_num = [] while True: num = random.randint(1, 45) if num not in lotto_num: lotto_num.append(num) lotto_num.sort() if len(lotto_num)==6: break lotto.append(lotto_num) print('이번 주에 혹시 내가..??

Naver Blog

[데이터 자격증] 데이터 관련 자격증 종류

이번 포스팅에서는 데이터 관련 자격증이 무엇들이 있는지 알아보려고 합니다. 데이터를 다룰 수 있는 실력이 중요하지만, 실력이 있음을 증명하기 위해 자격증을 많이들 취득하시지요? 오늘 소개하는 자격증은 취업/커리어에 도움이 되니 잘 읽어주시면 좋을 것 같아요:) 그 자격증들이 무엇일까요? (사실 대표이미지에 적혀 있어요^^;) SQLP / SQLD DAP / DAsP ADP / ADsP 바로 위 세가지인데요! 하나씩 함께 알아보도록 해요:) SQLP / SQLD DB에 접근하여 데이터 추출, 조작을 하기 위해서는 DB(DataBase)와 데이터 모델링에 대한 지식을 바탕으로 적절한 쿼리를 작성할 수 있어야겠지요? 그 능력을 검증하는 시험이라고 생각하시면 될 것 같습니다. K Data에서 발급하는 민간자격증이지만 '국가공인 민간자격증'으로 등록되어 공신력이 높고 수요가 늘어나고 있습니다! SQLP는 Structured Query Language Professional로 SQL 전문가를

Naver Blog

[코딩테스트] 파이썬 QUIZ - bool(불리언) 연산

앞으로 코딩테스트를 대비하여 난이도 Easy ~ Hard까지 퀴즈를 내보려고 합니다. 오늘은 파이썬 퀴즈, 첫번째 날입니다. 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : B 불(Bool)은 참(True)와 거짓(False)을 나타내는 자료형으로 참/거짓 2가지 값만을 가질 수 있습니다. (True/False는 파이썬 예약어이므로 true, false처럼 소문자가 아닌 첫글자 대문자로 사용 해주세요.) 문자열, 리스트, 튜플, 딕셔너리 등의 값이 비어 있으면/ 숫자 0/ None → 거짓 문자열, 리스트, 튜플, 딕셔너리 등의 값이 비어 있지 않으면 → 참 예제를 통해 확인해보면 >>> bool('python') True >>> bool('') False >>> bool(' ') True 문

Naver Blog

[코딩테스트] 파이썬 QUIZ - 문자열 split()

오늘은 파이썬 퀴즈, 두번째 날입니다. 포스팅 보시는 분들은 답이 무엇인지 먼저 고민! 해보시고 스크롤을 내려 정답을 확인해보세요. 정답과 해설은 화면 스크롤하시면 확인하실 수 있습니다:) 정답만 원하시는 분은 첫 번째 댓글에 정답만 올려둘테니 댓글 확인해주세요~ Answer : C 파이썬의 Split 함수는 문장절을 나눠서 리스트로 만들 때 사용하는 함수입니다. Syntax는 다음과 같습니다. 문자열.split() 문자열.split('구분자') 문자열.split('구분자', 분할횟수) 문자열.split(sep='구분자', maxsplit=분할횟수) sep : seperator. 문자열을 나누는 기준 maxsplit : 문자열을 나누는 횟수 (기본값 -1, 제한 없이 모두 나눈다.) 즉, split 함수는 문자열을 maxsplit 횟수만큼 sep 구분자를 기준으로 문자열을 구분하여 잘라서 리스트로 만들어줍니다. 예제를 통해 확인해보면 >>> text = 'Hello world' >>

Naver Blog

[데이터 자격증] 3일 만에 합격하는 SQLD(SQL개발자)

안녕하세요:) 데이터 다루는 샐리입니다~ 이번 포스팅은 2022.11.05 토요일에 응시한 제 47회 SQLD 자격증 공부 방법 및 합격 후기입니다! 저는 비전공자이고, 기획자 직무로 일하며 공부를 함께 진행하는 입장으로 부족한 시간을 쪼개 시험 3일 전부터 퇴근 후 4시간씩 공부하고 합격했습니다:) 물론 3일 만에 가능한 시험이니 쉽게 생각하고 따세요~가 아닙니다!! 어려운 시험이지만 3일 남았다고 포기하지 마시라고 경험 공유하는 포스팅입니다c SQL 자격증 개요 SQLD(SQL Developer) 자격증은 데이터베이스와 데이터 모델링에 대한 지식을 바탕으로 응용 소프트웨어를 개발하면서 데이터를 조작,추출하는데 있어서 정확하고 최적의 성능을 발휘하는 SQL을 작성할 수 있는 개발자임을 증명하는 국가공인 자격시험입니다. 더 자세한 SQLD(SQL 개발자)/SQLP(SQL 전문가) 자격 소개 및 시험 주요 내용은 데이터자격검정 홈페이지에서 확인 가능하시니, 궁금하신 분은 c 링크 눌러

Naver Blog

[데이터] 자료구조 - 스택(Stack)

자료구조 - 스택(Stack) 데이터를 제한적으로 접근할 수 있는 구조 한쪽 끝에서만 자료를 넣거나 뺄 수 있는 구조 가장 나중에 쌓은 데이터를 가장 먼저 빼낼 수 있는 데이터 구조 LIFO(Last-in, First-Out) 방식 대표적 스택의 활용 컴퓨터 내부의 프로세스 구조의 함수 동작 방식 주요 기능 push() : 데이터를 스택에 넣기 pop() : 데이터를 스택에서 꺼내기 스택 구조와 프로세스 스택 스택 구조는 프로세스 실행 구조의 가장 기본임 함수 호출 시에 프로세스 실행 구조를 스택과 비교 이해 필요 자료구조 스택의 장단점 장점 단순한 구조로 구현 용이함 데이터 저장/읽기 속도가 빠름 단점 데이터 최대 개수를 미리 정해야함 : 파이썬의 경우, 재귀 함수는 1,000번까지로 호출수 제한 저장 공간의 낭비가 발생할 여지가 있음 : 미리 최대 갯수만큼 저장 공간 확보해야함 파이썬 리스트 기능에서 제공하는 메소드로 스택 사용해보기 append(push), pop 메소드 이용하

Naver Blog

[파이썬실습] 파이썬으로 계산기 만들기

[Mission] 사칙연산 가능한 계산기 만들기 두 개의 숫자를 입력받아 사칙연산(+, -, ⨯, ÷)이 가능하도록 한다. 사칙연산 외 계산을 시도할 경우, 잘못된 선택이라 출력한다. def add(x, y): return x + y def subtract(x, y): return x - y def multiply(x, y): return x * y def divide(x, y): return x / y print('사칙연산을 선택하세요.') print('1. 더하기') print('2. 빼기') print('3. 곱하기') print('4. 나누기') choice = input('(1/2/3/4)중 원하는 연산을 선택하세요 :') num1 = int(input('첫번째 숫자 : ')) num2 = int(input('두번째 숫자 : ')) if choice == '1': print(num1, '+', num2, '=', add(num1, num2)) elif choice == '2

Naver Blog

[데이터] 자료구조와 알고리즘

자료구조란? 자료구조 = 데이터 구조(Data Structure) 대량의 데이터를 효율적으로 관리할 수 있는 데이터 구조를 의미 코드 상에서 효율적으로 데이터 처리하기 위해, 데이터 특성에 따라, 체계적으로 데이터 구조화 어떤 데이터 구조 사용하느냐에 따라 코드 효율이 달라짐 효율적 데이터 관리 효율적 데이터 관리의 예시 우편번호 : 5자리 우편번호로 국가 기초구역 제공 학생관리 : 학년, 반, 번호를 학생에게 부여 후 학생부 관리 대표적 데이터 구조 배열(Array), 큐(Queue), 스택(Stack), 링크드 리스트(Linked List), 해쉬, 트리, 힙 등 현실 세계에서의 가장 대표적인 예시는 '사전' 알고리즘(Algorithm)이란? 문제 해결을 위한 절차 또는 방법 어떤 문제에 대하여 특정 Input 제공 시, 기대하는 Output 얻을 수 있도록 만드는 프로그래밍 자료구조와 알고리즘의 중요성 사용 데이터 구조와 알고리즘을 쓰느냐에 따라 성능이 매우 달라진다. 알고리즘

Naver Blog

[데이터] 자료구조 - 배열(Array)

자료구조 - 배열(Array) 데이터를 나열하고, 각 데이터를 인덱스에 대응하도록 구성한 자료구조 파이썬에서는 리스트 타입이 배열 기능 제공 배열(Array)의 필요성 같은 종류의 데이터를 효율적으로 관리하기 위해 사용 같은 종류의 데이터를 순차적으로 저장 장점 빠른 접근 가능 : 인덱스 번호로 접근 단점 데이터 추가/삭제의 어려움 : 미리 최대 길이 지정 필요 파이썬과 배열 파이썬에서는 리스트 타입이 배열 기능 제공 인덱스로 리스트 접근 [Mission] 위 2차원 배열에서 7, 8, 9 순서대로 출력하기 print(data_list[2][0]) print(data_list[2][1]) print(data_list[2][2]) 파이썬 range range(stop) : range(5)는 0, 1, 2, 3, 4 range(start, stop) : range(1, 6)은 1, 2, 3, 4, 5 range(start, stop, step) : range(0, 10, 2)는 0, 2

Naver Blog

[데이터] 자료구조 - 큐(Queue)

자료구조 - 큐(Queue) 가장 먼저 넣은 데이터를 가장 먼저 꺼낼 수 있는 구조 FIFO(First-In, First-out), LILO(Last-in, Last-Out) 방식 스택(Stack)과 반대 (자료구조 - 스택(Stack) 포스팅) 주요 기능 Enqueue/ put() : 큐에 데이터를 넣는 기능 Dequeue/ get() : 큐에서 데이터를 꺼내는 기능 파이썬 큐(Queue) 라이브러리 활용 큐(Queue) 라이브러리에는 다양한 큐 구조로 Queue(), LifoQueue(), PriorityQueue() 제공 Queue() : 가장 일반적인 큐 자료구조 LifoQueue() : 나중에 입력된 데이터가 먼저 출력되는 구조 (like 스택 구조) PriorityQueue() : 데이터마다 우선순위 부여하여 우선순위 높은 순으로 데이터 출력되는 구조 큐 라이브러리 활용_Queue()로 큐 만들기 '1'을 나중에 input → .get 통해 빼낼 때 '1' output 큐

Naver Blog

[디자인 자격증] 3일 만에 합격하는 GTQ 1급 꿀팁:)

안녕하세요:) 데이터 다루는 샐리입니다~ 오늘은 2020년 취득했던 GTQ(그래픽기술자격) 1급을 소개하려고 합니다. GTQ 자격증 개요 GTQ(Graphic Technology Qualification)는 컴퓨터그래픽 디자인 능력을 평가하는 국가공인자격 시험입니다. 실무 활용성을 높이기 위해 실기 시험방식만 채택하여 이론 시험은 없어요:) 시험 개요는 하기와 같아요. * 시험 접수 기간에 고사장 별로 응시 가능한 S/W 버전 확인 가능 제가 응시한 GTQ 1급은 4문항으로 [1번_20점] 고급 Tool 활용 - 펜툴 이용하여 패스 저장 및 여러 도구를 이용한 이미지 제작 [2번_20점] 사진편집 응용 - 이미지 색상/명도 조절 등 이미지 변형 및 효과 [3번_25점] 포스터 제작 - 레이어 편집 및 문자를 이용한 효과 [4번_35점] 웹 페이지 제작 - 1, 2, 3번 문항 요소들을 활용한 웹 페이지 제작 난이도는 2 → 1 → 3 → 4 순으로 어려워집니다. GTQ1급 자격증 공

Naver Blog

[디자인 자격증] 3일 만에 합격하는 ACA(ACP) 자격증 - 모의고사(기출) 자료 제공

안녕하세요:) 이번 포스팅은! 3일 만에 합격하는 ACA 자격증(현재는 ACP로 불림)입니다. 저는 2020년 10-11월에 ACA Photoshop/ Illustrator/ InDesign CC 2015 3가지를 모두 취득했고 이 자격증에 대해 알아보도록 할게요! ACA(ACP) 자격증 개요 ACP는 Adobe사 소프트웨어 사용 능력을 공인하는 국제자격증입니다. 2021년 8월까지는 ACA(Adobe Certified Associate)라고 불렸지만, 그 이후부터는 ACP(Adobe Certified Professional)이라 불립니다. [자격명] Adobe Certified Associate(ACA) → Adobe Certified Professional(ACP) [과목] Photoshop(한국어), Illustrator(한국어), InDesign(한국어), Premiere(한국어), After Effects(영어), Animate(영어), Dreamweaver(영어) [버전]

Naver Blog

[파이썬실습] 파이썬으로 구구단 출력하기

[Mission] 최대한 짧은 코드로 구구단 출력하기 for문 활용하기 print('구구단을 출력합니다.') for i in range(2, 10): print('----------[' + str(i) + '단]----------') for j in range(1, 10): print(f'{i} X {j} = {i*j}') * 코드 실행 화면은 편의상 5단 일부까지만 제공 파이썬으로 구구단 출력하기가 도움이 되셨다면 공감 부탁 드립니다

Naver Blog

[파이썬실습] 파이썬으로 1부터 n까지의 합 구하기

[Mission] 1부터 n까지의 숫자 합 구하기 for문 활용하기 리스트 활용하기 sum_list = [] for i in range(101): sum_list.append(i) sum(sum_list) 파이썬으로 리스트 활용한 1부터 n까지의 합 구하기가 도움이 되셨다면 공감 부탁 드립니다

Naver Blog

[파이썬실습] 파이썬으로 BMI 계산하기

[Mission] 키와 몸무게를 입력 받아 BMI 계산하기 BMI = 체중(kg) / 키(m)2 BMI 20 미만: 저체중/ 20 ~ 24 미만: 표준체중 / 24 ~ 30 미만: 과체중 / 30 이상: 비만 키는 cm로 입력 받고, 몸무게는 kg으로 입력 받기 name = input('이름을 입력하세요: ') height = input('키를 입력하세요: ') height = float(height) / 100 weight = input('몸무게를 입력하세요: ') weight = float(weight) bmi = weight / (height * height) print(f'{name}님의 bmi 지수는 {bmi}입니다.') if bmi < 20: print(f'bmi에 따라 구분한 {name}님의 체중은 저체중입니다.') elif 20 <= bmi < 24: print(f'bmi에 따라 구분한 {name}님의 체중은 표준체중입니다.') elif 24 <= bmi < 30: p

Naver Blog

[파이썬실습] 파이썬으로 스무고개 - 숫자 Up&Down

[Mission] 숫자 Up & Down 스무고개 게임 만들기 컴퓨터와 플레이어를 변수로 지정 플레이어 입력 숫자와 컴퓨터 숫자 비교하여 'Up' or 'Down' 출력 플레이어 입력 숫자와 컴퓨터의 숫자가 같으면 '정답입니다' 출력 print('이제 스무고개 게임을 시작합니다.') print('-------------------------------------------') com = int(input('1~100 사이의 숫자를 입력하세요: ')) player = int(input('맞출 숫자를 입력하세요: ')) tries = 0 if com > player: print('Up') elif com < player: print('Down') else: print('정답입니다.') 파이썬으로 간단 스무고개가 도움이 되셨다면 공감 부탁 드립니다

Naver Blog

[파이썬실습] 파이썬으로 스무고개 - 숫자 Up&Down (업그레이드버전)

[Mission] 숫자 Up & Down 스무고개 게임 만들기 맞춰야하는 숫자 : 1~100 사이의 숫자 랜덤 추출 입력 숫자와 랜덤 숫자를 비교하여 'Up' or 'Down' 출력 입력 숫자와 랜덤 숫자가 같을 경우, 몇 번 만에 맞췄는지 출력 맞출 수 있는 기회는 10번으로 제한 import random random_num = random.randrange(1, 101, 1) tries = 0 print('1~100 사이의 숫자로 스무고개 게임을 시작합니다.') print('-------------------------------------------') while (random_num != num): num = int(input('1~100 사이의 숫자를 입력하세요: ')) if (num > random_num): print('Down') tries += 1 elif (num < random_num): print('Up') tries += 1 else: tries += 1 pr

Naver Blog

[파이썬] 주피터 노트북 단축키

지난 주피터 노트북 사용법 포스팅은 잘 보시고 오셨나요? 이번 포스팅은 말씀드린 대로 알아두면 퇴근이 빨라진다! 단축키와 마크다운에 대해 알아볼게요. 주피터 노트북 단축키 * 대문자/소문자 여부는 관계 없습니다. 식별을 위해 대문자로 적었을 뿐이에요:) 마크다운 사용법 Headings Quote Line List 오늘 포스팅이 도움이 되셨다면 공감 버튼 부탁드려요

Naver Blog

[코딩테스트] 소수(Prime number) 찾기

두 수 사이에 있는 소수(Prime Number) 찾기 [QUESTION] 2와 입력받은 숫자 n 사이에 존재하는 소수(Prime Number)를 출력하는 프로그램을 작성한다. [입력] 자연수 n을 입력 받는다. [출력] 입력 받은 두 수 사이에 존재하는 소수를 리스트로 출력한다. 중학교 때 배운 '소수(Prime Number)' 기억 하시나요? 소수는 1과 자기 자신만을 약수로 가지는 수입니다. 2 이상 30 미만의 소수를 나열하면 다음과 같아요. 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 저의 사고의 흐름은 다음과 같았어요. 소수를 구하는 함수 선언 - 소수를 구할 빈 리스트 생성 - .isprime() 함수를 통해 소수인지 확인하려고 해요. 그리고 2부터 n-1까지의 숫자들 중 나누어 떨어지게 만드는 수(약수)가 있으면 소수가 아니므로 생성해둔 리스트에 숫자를 추가해보도록 할게요. pnlist = [] def isPrime(n): for i in range(

Naver Blog

[코딩테스트] n명이 나눠먹을 피자 개수 구하기

n명이 나눠먹을 피자 개수 구하기 [QUESTION] 피자 조각을 s개로 나누고 피자를 나눠먹을 사람의 수가 n일 때, 모든 사람이 피자를 한 조각 이상 먹기 위한 피자 개수를 출력하는 프로그램을 작성한다. [입력] 피자 조각 slice와 사람의 수 n을 입력 받는다. [출력] 피자집에서 제공해야 할 피자 개수를 출력한다. 오늘은 소수점 제거 함수 ceil(), floor(), round()에 대하여 공부해볼 겁니다. ceil() 함수 ceil() 함수는 한 마디로 하면 올림 함수입니다. 즉, 소숫점 아래 숫자가 있으면 소숫점 아래를 버림하고 정수 부에 1을 더해 주고, 소숫점 아래 숫자가 없으면 그대로 정수를 반환합니다. >>> import math >>> math.ceil(1.2) 2 >>> math.ceil(7.6) 8 >>> math.ceil(10) 10 2. floor() 함수 floor() 함수는 한 마디로 버림 함수입니다. 말 그대로, 소숫점 아래를 그냥 버립니다. >>

Naver Blog

[코딩테스트] 리스트(List) 배열 뒤집기

주어진 리스트(List) 원소 배열 뒤집기 [QUESTION] 정수가 들어 있는 리스트의 원소의 순서를 거꾸로 뒤집은 배열을 return하는 프로그램을 작성한다. [입력] 정수로 구성된 리스트가 이미 존재하고, 순서를 뒤집은 배열을 return하도록 한다. [출력] 순서 뒤집힌 배열 이번 포스팅은 매우 쉬워서 포스팅을 작성할까 고민했지만, 공부할 내용이 있어서 만들어봤습니다. Python Array[::] 활용법에 대해 공부해 볼 건데요. array[A:B:C]의 의미를 파악해보면 index A부터 index B까지 C의 간격으로 배열 만들기입니다. A가 존재하지 않으면 '처음부터'를 뜻하고, B가 존재하지 않으면 '가능한 끝까지', C가 존재하지 않으면 '한 칸 간격으로'라는 뜻입니다. 여기서 B가 존재하지 않을 때, '가능한 끝까지'라는 의미는 C, 즉 step이 양수이면 마지막 index까지, step이 음수이면 첫 index까지이므로 '가능한'이라는 단어가 붙었습니다. 예를

Naver Blog

[코딩테스트] 리스트(List) 배열의 유사도

리스트 배열의 유사도 판단하기 [QUESTION] 두 리스트 a와 b 내 존재하는 중복된 원소의 개수를 return하는 프로그램을 작성한다. 오늘 문제는 set().intersection()을 활용하는 문제입니다. 리스트에서 중복된 것을 찾기 위해 사용하는 것으로 예시를 통해 알아볼게요. >>> a = [1, 2, 3, 4] >>> b = [3, 4, 5, 6] >>> common = set(a).intersection(b) {3, 4} 위 소스코드에서 볼 수 있듯이 반환되는 값의 type은 set입니다. 따라서 원하는 type에 따라 list()/ str() 등으로 형변환 해주어야 합니다. 리스트로 return 되길 원한다면 >>> a = [1, 2, 3, 4] >>> b = [3, 4, 5, 6] >>> common = list(set(a).intersection(b)) {3, 4} 문제에서처럼 중복되는 것의 개수를 구하기 위해서는 다음과 같습니다. >>> a = [1, 2, 3

Naver Blog

[코딩테스트] 피보나치(Fibonacci) 수 구하기

피보나치 수 구하기 [QUESTION] 첫째항과 둘째항이 3인 피보나치(Fibonacci) 수열의 n번째 항을 출력하는 프로그램을 작성한다. [입력] n번째 피보나치 수를 구하고 싶을 때, 자연수 n을 입력한다. [출력] n번째 피보나치 수를 출력한다. 피보나치 수열에 대해서 들어보셨나요? 저는 고등학생 때 '수열' 단원을 배울 때 배워보았고, 워낙 수를 좋아했던 저이기에 길을 가다가 자동차 번호판의 숫자가 피보나치 수열을 이루면 괜시리 행운이 올 것 같고 그랬답니다:) 오늘은 그 피보나치 수열을 이용하여 n번째 수를 구해보려고 합니다. An = An-1+ An-2 (n>=2)인 수열 An을 피보나치 수열이라고 합니다. A1 = 1, A2 = 2이고 수열 An이 피보나치 수열이라고 할 때, 각 항을 나열하면 예를 들어보면 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, … 가 됩니다. 제가 코드를 작성하고 공부하면서 느끼는 점은.. 하나의 결과를 내기 위해 수 많은 방

Naver Blog

[파이썬] 아나콘다 설치 (라이브러리, 패키지, 주피터 노트북을 한 번에!)

데이터분석 및 시각화를 하면서 다양한 라이브러리를 제공하는 파이썬(Python)을 주로 사용하였습니다. 가장 쉽고, 가장 강력한 프로그래밍 언어라는 말이 아깝지 않죠? 파이썬의 매력에 흠뻑 빠져있습니다..ㅎㅎ 파이썬 개발 도구는 파이썬 공식 홈페이지에서 다운로드 가능하지만, 파이썬과 기본 라이브러리만 설치되고 필요 패키지들을 수작업으로 찾아서 설치해야 하는 번거로움이.. ㅜㅜ 이러한 불편함을 해결해주는 것이 바로 아나콘다(Anaconda)입니다. 아나콘다(Anaconda)란? 아나콘다는 기본 라이브러리와 가장 많이 사용하는 패키지, 주피터 노트북을 한 번에 설치할 수 있는 파이썬 배포판으로 수백 개의 파이썬 패키지를 포함하고 있습니다. 그럼 함께 라이브러리, 패키지, 주피터 노트북(Jupyter Notebook)을 설치 해 볼까요~? 아나콘다 배포판 설치 01 아나콘다 배포판 설치 URL을 클릭해주세요:) 02 노란색 동그라미 친 가운데 부분 Download를 눌러줍니다:) 03 아

Naver Blog

[파이썬] 주피터 노트북 사용 방법

아나콘다 설치 포스팅은 잘 보고 오셨나요? 개발자는 보통 통합 개발 환경이라고 하는 IDE(Integrated Development Environment)를 이용하여 프로그램을 개발합니다. 파이썬용 IDE에는 주피터 노트북(Jupyter Notebook), 비주얼 스튜디오 기반의 PTVS, 이클립스 기반의 PyDev, JetBrains의 파이참(Pycharm)등이 있습니다. 오늘 포스팅에서는 이 중에서 주피터 노트북에 대해서 알아볼게요 주피터 노트북(Jupyter Notebook)이란? 주피터 노트북은 코드, 텍스트, 데이터 시각화를 비롯한 다른 출력을 대화형(IPython 커널 기반)으로 구성할 수 있는 웹 기반 파이썬 에디터입니다. 주피터 노트북은 웹 브라우저상에서 파이썬 코드를 셀 단위로 나누어 입력, 실행이 가능하여 인터랙티브한 동작(대화형)이 가능하고 차트, 표 등의 결과값 출력을 직관적으로 바로 볼 수 있으며 Github에 주피터 노트북의 결과 출력 방식 그대로 올릴 수

Naver Blog

데이터 기반 의사결정의 시대

저는 IT 기업에서 콘텐츠/서비스 기획 직군에서 근무하였는데요! 연관 부서와 의사소통을 할 당시에 가장 많이 목말랐던 부분이 데이터를 기반으로 한 의사결정이었습니다. 도메인(Domain) 지식을 바탕으로 경험 기반 안건을 내고 가설을 세우다보니 가설이 맞는지에 대한 정확한 수치를 확인할 수 없었고, 그 목마름을 해결하기 위해 '데이터 분석'에 관심을 갖게 되었습니다. 가장 효율적인 설득을 위해 01 수치 기반의 정확한 근거를 가지고 02 모두가 알기 쉬운 용어로 03 시각화 하여 의견을 제시 상기 세 가지가 필요하다는 것을 느꼈습니다. 우리는 스마트 디바이스를 통해 더 많은 돈과 시간을 쓰고 있고, 그 데이터를 한 데 모으면 우리의 삶을 재구성할 수 있습니다. 우리의 삶 자체가 바로 메타버스가 되어 가고 있는 시대 속에서 데이터의 가치는 새로운 석유이기도 하고, 금광이기도 합니다. 도대체 데이터(Data)란 무엇이고, 데이터분석(Data Analysis)이란 무엇일까요? 데이터(Da

Naver Blog

데이터 직무 이해하기:)

오늘은 '데이터'와 연관된 직무에 대해 알아보려고 해요. '데이터'에 관심을 가진 이후로 심플하게! 딱 관련 직무를 속시원하게 누가 정리해줬으면.. 하는 바람이 있었는데 오늘은 제가 저와 같은 갈증을 느끼시는 분들께 도움이 되었으면 하는 바람입니다! 데이터 직무 데이터와 연관이 없는 분야가 이제는 없죠? 기본적으로 데이터 직무는 데이터와 연관된 다양한 업무 또는 업무들의 집합을 의미하고 있습니다. 먼저 '데이터 자체에 집중'하느냐 '데이터를 활용하는 것에 집중'하느냐에 따라 구분을 먼저 해보려고 해요. 데이터 집중 직무를 크게 3가지로 분류해보면 다음과 같아요! 데이터를 수집하고 관리하는 데이터 엔지니어 데이터를 토대로 현재 상황을 분석하는것에 집중하는 데이터 분석가 데이터로 미래를 예측하는 데이터 사이언티스트 데이터 활용 직무를 크게 4가지로 분류해보면 다음과 같아요! 고객과 커뮤니케이션하고 분석하는 CRM(Customer Relationship Management) 마케터 광고

Naver Blog

[데이터 직무] 데이터 집중 직무

데이터 직무 이해하기 편을 못 보셨다면? c 눌러주세요:) 오늘은 데이터 직무 이해하기 2편! 데이터 집중 직무에 대해 알아보려고 합니다. 개발자 같은 데이터 엔지니어 데이터 엔지니어는 다음과 같은 업무를 담당해요:) 어떤 방식으로 데이터 수집할지 데이터를 어떻게 쌓고 관리할지 데이터 분석에 용이하도록 어떻게 데이터를 변환할지 고민하여 데이터 수집을 위한 파이프라인을 구축, 운영합니다. 기획자 같은 데이터 분석가 데이터 분석가는 다음과 같은 업무를 담당해요:) 어떤 데이터를 수집할 것인지 정의 비지니스 주요 지표를 정의 및 분석 데이터를 시각화하여 보다 쉽게 파악할 수 있게 그를 통해 인사이트를 도출 합니다. 수집한 데이터를 분석, 시각화하여 타부서와 소통해야 하므로 기술적인 면과 함께 커뮤니케이션 스킬이 중요해요~ 데이터를 토대로 현재 상황을 분석하는 것에 집중하는 경향이 있습니다:) 연구원 같은 데이터 사이언티스트 데이터 사이언티스트는 다음과 같은 업무를 담당해요:) 데이터를 수

Naver Blog

[데이터 직무] 데이터 활용 직무

데이터 직무_데이터 집중 직무포스팅을 못 보셨다면? c 눌러주세요:) 오늘은 데이터 직무 이해하기 마지막 편! 데이터 활용 직무에 대해 알아보려고 합니다. 고객 중심 CRM 마케터 CRM(Customer Relationship Management) 마케터는 다음과 같은 업무를 담당해요:) 고객과 커뮤니케이션하고 분석 기존 고객들이 더 많은 가치를 창출하도록 관리 고객 데이터에 기반한 마케팅 전략을 세우고 결과를 분석 합니다. 회사의 고객 데이터로부터 인사이트를 얻어야하므로 회사 DB(DataBase)에서 데이터를 추출하기 위해 SQL 활용 능력, 웹/모바일 트래킹 툴(Google Analytics) 활용 능력이 요구됩니다. 광고 최적화 진행하는 퍼포먼스 마케터 퍼포먼스 마케터는 다음과 같은 업무를 담당해요:) CRM 마케터와 달리 광고를 통해 효과적으로 새로운 고객을 유치 광고비용 최적화를 통해 비효율적인 광고를 줄일 수 있도록 합니다. 퍼포먼스 마케터는 디스플레이 광고(Displa

1 2