본문 바로가기
반응형

전체 글546

알고리즘, datetime 모듈 2021. 6. 1.
3-2. DataFrame 실전 | 리스트로 되어 있는 이름, 생일, 직업을 df로 변환하기 문제 내 답안 import pandas as pd # 코드를 작성하세요. list_df = [ ['Taylor Swift','December 13, 1989','Singer-songwriter'], ['Aaron Sorkin','June 9, 1961','Screenwriter'], ['Harry Potter','July 31, 1980','Wizard'], ['Ji-Sung Park','February 25, 1981','Footballer'] ] # 칼럼명은 여기서 삽입 my_df = pd.DataFrame(list_df, columns=['name','birthday','occupation']) # 정답 출력 my_df 모범 답안 import pandas as pd celebrities = [ ['.. 2021. 5. 31.
펠린드롬 | 함수, 리스트, 문자열 주어진 코드 def is_palindrome(word): # 테스트 print(is_palindrome("racecar")) print(is_palindrome("stars")) print(is_palindrome("토마토")) print(is_palindrome("kayak")) print(is_palindrome("hello")) 내가 푼 문제1 def is_palindrome(word): list_word = list(word) reverse_word = list(word) # list 변환 reverse_word.reverse() # 거꾸로 변환 return list_word == reverse_word 내가 푼 문제2 def is_palindrome(word): word = list(word) .. 2021. 5. 31.
주민번호 가리기 | 함수, 리스트, 문자열 문제 : 주민번호에서 맨 뒷자리 4개만 *로 수정한다. 기본 코드 def mask_security_number(security_number): # 테스트 print(mask_security_number("880720-1234567")) print(mask_security_number("8807201234567")) print(mask_security_number("930124-7654321")) print(mask_security_number("9301247654321")) print(mask_security_number("761214-2357111")) print(mask_security_number("7612142357111")) 시행 착오 1 : 별표 변환이 이상하다. 무엇이 문제일까? def ma.. 2021. 5. 31.
피타고라스 | for 반복문 a * b * c의 값은? 31875000 내가 푼 정답 1차 for a in range(1, 1000) : for b in range(a, 1000) : if a * a + b * b == (1000-a-b) * (1000-a-b) : print(a*b*(1000-a-b)) break 내가 푼 정답 2차 # c > b > a 니까, c는 b의 최대치, b는 a의 최대치 for c in range(1,1000) : for b in range(1, c) : # c는 b의 최대치 for a in range(1, b) : # b는 a의 최대치 if a * a + b * b == c * c : if a + b + c == 1000 : print(a * b * c) break 모법 답안 for a in range.. 2021. 5. 31.
자릿수 합 구하기 | 함수, 반복문, 리스트와 스트링 타입의 특징 활용 내가 푼 정답 # 자리수 합 리턴 def sum_digit(num): int_num = 0 str_num = str(num) # 문자열로 변환 for i in range(len(str_num)) : # 길이 만큼 반복 int_num += int(str_num[i]) return int_num # sum_digit(1)부터 sum_digit(1000)까지의 합 구하기 num = 1 sum_num = 0 while num 2021. 5. 31.
투표 집계하기 : 사전, 리스트 다음 코드에서 오류가 발생하는 이유는? # 투표 결과 리스트 votes = ['김영자', '강승기', '최만수', '김영자', '강승기', '강승기', '최만수', '김영자', \ '최만수', '김영자', '최만수', '김영자', '김영자', '최만수', '최만수', '최만수', '강승기', \ '강승기', '김영자', '김영자', '최만수', '김영자', '김영자', '강승기', '김영자'] # 후보별 득표수 사전 vote_counter = {} # 리스트값 하나씩 가져옴 for name in votes: if vote_counter[name] == vote_counter[name] : vote_counter[name] += 1 # 이름(키)의 값에 1추가 # 후보별 득표수 출력 print(vote_c.. 2021. 5. 31.
3-1. DataFrame 이론 | Numpy와 Pandas DF의 차이점. DF 만들기 R과 파이썬 R의 데이터 보관, 정리, 분석을 담당하는 것이 DataFrame인데 이 기능을 Python의 Pandas Library가 가져옴 Numpy vs Pandas 넘파이 판다스의 DataFrame numpy를 기반으로 제작됨 numpy기능 + 데이터 정리, 분석 + 외부데이터 읽고쓰기 + 시각화 1차원, 2차원 2차원 형태의 데이터를 다루기 위한 자료형 표형식의 데이터를 담는 자료형 숫자인덱스로 값을 찾음 테이블의 모든 값이 같아야함 (주로 숫자로함) 숫자인덱스가 아닌 행,열에 붙여진 이름으로 값을 찾을 수 있음. 문자열 혹은 숫자로 보관하고 싶은 것을 구분해서 담을 수 있음 2차원 넘파이 : 한 테이블의 모든 값의 타입이 같아야함 넘파이는 주로 숫자위주 한 테이블에 다양한 자료를 담을 수 있음.. 2021. 5. 29.
배열과 리스트의 차이 배열 리스트 같은 자료형을 가진 변수를 하나로 나타낸 것 생성시 [ ] 사용 인덱스로 값에 대한 식별을 함 인덱스를 사용하여 요소 접근 가능 즉, 인덱스로 몇 번째 데이터 정도만 알 수 있음 인덱스로 값에 대한 식별은 못함. 그 이유는 각 요소들이 메모리상에 흩어진 경우가 인덱스를 사용할 수 없기 때문 생성시 데이터 크기가 정해짐 정적인 데이터 크기 동적인 데이터 크기 연속적인 메모리 공간 연속된 메모리 공간으로 이루어져 있으므로 메모리 관리 용이함 연속적이거나 아닌 메모리 공간 : 불연속적인 메모리 공간 배열의 모든 요소들은 동일 사이즈 지님 데이터 삭제시, 해당 공간이 남음 (연속된 배열 때문) 빈틈없는 적재 메모리 상의 연속적인 위치에 요소들 배치 순서있는 데이터의 모임 추가적인 삽입 삭제 X 포인.. 2021. 5. 29.
2-2. Numpy 실전 | numpy array에 곱셉연산. Boolean연산 Q.1 >신주쿠 흥부부대찌개 엔화(¥)로 저장한 매출 데이터를 원화(₩)로 변환하는 작업이 필요. 엔화 매출이 담겨 있는 파이썬 리스트가 주어짐. 1엔에 10.08원이라고 가정하고, 원화 매출이 담긴 numpy array를 만들어 출력할 것. 기본 코드는 다음과 같다. import numpy as np revenue_in_yen = [ 300000, 340000, 320000, 360000, 440000, 140000, 180000, 340000, 330000, 290000, 280000, 380000, 170000, 140000, 230000, 390000, 400000, 350000, 380000, 150000, 110000, 240000, 380000, 380000, 340000, 420000, 1.. 2021. 5. 29.
2-1. Numpy 이론 | 넘파이배열과 파이썬 리스트의 차이점, 평균▪중간값 등등 크고 복잡한 데이터를 쉽게 계산하게 도와주는 넘파이. numerical python 수치계산을 돕는 파이썬 도구 넘파이가 중요한 이유? 넘파이 배열 ( numpy array) = 파이썬 리스트와 비슷함 일반적인 파이썬 리스트로 배열을 작성하면 코드가 길고 연산 시간이 오래 걸림 numpy array와 python list의 차이점 문법 차이 간단한 문법과 뛰어난 성능 numpy array python list 덧셈, 곱셈 동일한 배열 2가지를 덧셈 연산하면? [10,5,3] + [10,5,3] = [20,10,6] 배열 전체에 곱셉 계산하면? [1,2,3] * 2 = [2,4,6] 동일한 배열 2가지를 덧셈 연산하면? [10,5,3] + [10,5,3] = [10,5,3,10,5,3] 배열 전체에 곱셈 .. 2021. 5. 29.
리스트 함수를 활용하여 차례대로 수정하기 막힌 상황 : 3번째 출력에서 홀수 7이 들어있다. # 빈 리스트 만들기 numbers = [] print(numbers) # numbers에 값들 추가 numbers = [1, 7, 3, 6, 5, 2, 13, 14] print(numbers) # numbers에서 홀수 제거 index = 0 while index < len(numbers) : if numbers[index] % 2 != 0 : # 홀수라면 del numbers[index] index += 1 print(numbers) # 출력 결과물에 유일하게 홀수 7이 들어있다. [7, 6, 2, 14] # numbers의 인덱스 0 자리에 20이라는 값 삽입 numbers.insert(0, 20) print(numbers) # numbers를 정.. 2021. 5. 28.
한화, 달러, 엔화 문제 : 함수, 반복문 출력결과물 한국 화폐: [34000, 13000, 5000, 21000, 1000, 2000, 8000, 3000] 미국 화폐: [34.0, 13.0, 5.0, 21.0, 1.0, 2.0, 8.0, 3.0] 일본 화폐: [4250.0, 1625.0, 625.0, 2625.0, 125.0, 250.0, 1000.0, 375.0] 내가 푼 정답 # 원화(₩)에서 달러($)로 변환하는 함수 def krw_to_usd(krw): return krw * 0.001 # 1000원은 1달러 # 달러($)에서 엔화(¥)로 변환하는 함수 def usd_to_jpy(usd): return usd * 125 # 1달러는 125엔화 # 원화(₩)으로 각각 얼마인가요? prices = [34000, 13000, 5000, 21.. 2021. 5. 28.
온도 단위 바꾸기 문제. def, while 내가 푼 답안1 (함수에 모조리 넣기) # 화씨 온도에서 섭씨 온도로 바꿔 주는 함수 def fahrenheit_to_celsius(fahrenheit): index = 0 new_list = [] while index < len(fahrenheit) : j = round((fahrenheit[index] - 32) * 5 / 9, 1) # 환산 후 소수점 반올림 new_list.append(j) # 빈리스트에 추가 index += 1 return new_list # 새 리스트 반환 temperature_list = [40, 15, 32, 64, -4, 11] print("화씨 온도 리스트: " + str(temperature_list)) print("섭씨 온도 리스트: {}".format(fahrenh.. 2021. 5. 28.
while문으로 구구단만들기 왜 1 * 1 = 1, 2 * 2 = 4, ... 순으로 출력되는건가? num = 1 while num 2021. 5. 27.
피보나치 50개항 출력 내코드 previous = 0 current = 1 num = 1 while num 2021. 5. 27.
우승상금 이자율과 은마아파트 비교 | while, if 원하는 출력 결과 94193324원 차이로 동일 아저씨 말씀이 맞습니다. 내가 푼 정답 # 상수, 변수명 달리 했어야 # {0:.0f} 대신 format에서 int 활용하는 방법도 있음 # 2016년 포함인지 아닌지 확인 price_money = 50000000 bank_rate = 0.12 past_year = 1989 now_year = 2016 apartment = 1100000000 while past_year apartment : print("{0:.0f}원 차이로 동일 아저씨 말씀이 맞습니다.".format(price_money - apartment)) else : print("{0:.0f}원 차이로 미란 아주머니 말씀이 맞습니다.".format(apartment - price_money)) .. 2021. 5. 27.
120의 약수와 갯수 출력 출력 결과물 1 2 3 4 5 6 8 10 12 15 20 24 30 40 60 120 120의 약수는 총 16개입니다. 내가 푼 답안인데 틀림 이유가 뭘까? num = 1 count = 0 while num 2021. 5. 27.
반응형