전체 글 190

WIL 3주차

FACTS(사실, 객관) 이번 일주일동안 있었던 일, 내가 한 일 개인 과제와 팀 과제를 진행하였고 팀 과제로 스파르타몬 게임을 만들어 보았다. 제일 먼저 노션으로 진행 방식과 캐릭터, 몬스터 등을 정한 것이 많은 도움이 되었다. FEELINGS(느낌, 주관) 나의 감정적인 반응, 느낌 과제를 제때 끝내기 위해 딕셔너리 사용은 약간의 시도만 하다 포기했지만 시간만 넉넉했다면 충분히 해냈을 거라 생각한다! 처음 튜터님의 강의에서처럼 주석을 잘 활용한 것은 잘한 일. FINDINGS(배운 것) 그 상황으로부터 내가 배운 것, 얻은 것 vscode 라이브쉐어로 계속 진행했는데 팀원분들과 잘 맞아서 원활하게 트러블 하나 없이 잘 마무리하여 다행이었다. 나는 평소 한 파일에 다 작성하는 편이었는데 기능별로 잘 나..

파이썬 mutable immutable 얕은 복사 깊은 복사 copy()

! ! 코딩할 때는 휴먼 에러가 생기지 않을 방향으로 작성해야 한다 ! ! ! ! 파트 분배시 input과 output을 미리 정해두면 좋다 ! ! ! ! 주석을 잘 활용하자 ! ! mutable한 객체 : 객체 생성 이후에도 내부 상태가 변경될 수 있는 객체로, 리스트(list), 딕셔너리(dict), 집합(set) 등이 포함된다. immutable(불변)한 객체 : 객체 생성 후 내부 상태가 변경될 수 없는 객체로, 문자열(str), 숫자(int, float 등), 튜플(tuple) 등이 포함된다. a = "hello world" b = ["hello", "world"] a_ = a b_ = b a_ += "!!" b_.append("!!") print(a) # hello world print(b) ..

Python/공부 2023.03.31

코딩테스트 입문_최댓값 만들기(1)

Lv. 0, 89% 문제 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요. 제한사항 0 ≤ numbers의 원소 ≤ 10,000 2 ≤ numbers의 길이 ≤ 100 입출력 예 입출력 예 #1 두 수의 곱중 최댓값은 4 * 5 = 20 입니다. 입출력 예 #2 두 수의 곱중 최댓값은 31 * 24 = 744 입니다. https://school.programmers.co.kr/learn/courses/30/lessons/120847 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받..

코딩테스트 2023.03.31

코딩테스트 입문_최빈값 구하기_sorted()

https://school.programmers.co.kr/learn/courses/30/lessons/120812 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 차례대로 차근차근 풀어서 생각하지 않으면 힘든 문제였다! 처음에는 array에 값이 하나만 주어지는 경우를 빼먹었고 또 어쩌다가는 최빈값을 자주 나온 횟수로 생각해서 틀렸다😃 def solution(array): answer = 0 # 최빈값 num = {} for i in array: if i in num: num[i] += 1 else: num[i] = 1 # print(num) # {1: ..

코딩테스트 2023.03.30

자료구조 알고리즘

자료구조/알고리즘을 배워야 하는 이유 성능, 용량, 비용 자료(데이터)를 효율적으로 관리하는 방법 시간 복잡도와 공간 복잡도 내가 작성한 코드의 성능, 용량을 판단하기 위한 척도 시간 복잡도: 수행시간(성능)의 척도 빅오(Big-O) 표기법: 제한 시간과 제한 사항(데이터의 크기) 대략 연산 1억번에 1초 for문 하나 있으면 O(n) for문 하나 있으면 O(n^2) for문 하나 있으면 O(n^3) ... 예) 알고리즘 A의 시간 복잡도는 O(nlogn) 알고리즘 B의 시간 복잡도는 O(n^2) 공간 복잡도: 메모리 사용량의 척도 최선일 경우(best case) : 빅-오메가 표기법 보통일 경우( case) : 빅- 표기법 최악일 경우(worst case) : 빅-오 표기법 but, 메모리 기술의 발..

알고리즘 2023.03.30

파이썬 뒤집기 슬라이싱 reverse() join() pop()

배열 뒤집기 파이썬의 내장 함수인 reverse() 사용하기 num_list = [1, 2, 3, 4, 5] num_list.reverse() print(num_list) # [5, 4, 3, 2, 1] 자료형 슬라이싱 사용하기 기본 구조는 [start(기본값=0):end(기본값=시퀀스의 길이):step(기본값=1)] num_list = [1, 2, 3, 4, 5] print(num_list[::-1]) # [5, 4, 3, 2, 1] 문자열 뒤집기 처음에는 reverse 사용을 생각했는데, 한 글자씩 출력하기 때문에 단순히 문자열을 콘솔에 출력하는 것이 된다고 한다 def solution(my_string): return ''.join(reversed(my_string)) a = solution("ja..

Python/공부 2023.03.29

알아두면 유용한 파이썬 사용 꿀팁 단축키

cls 터미널 콘솔창을 깨끗하게 지워준다 Ctrl + ` 콘솔창 열고 닫기 Ctrl + / 주석처리 괄호 감싸기 해당 블록 선택 후, ( { [ ' " 등을 누르면 자동으로 감싸준다 F2 변수명 한꺼번에 바꾸기 Ctrl + Shift + 방향키 블록별로 묶어서 선택 가능 Ctrl + Shift + End 선택한 곳에서부터 끝까지 블록 지정 Alt + 클릭 열 다중선택 멀티커서 다중커서 Ctrl + Alt + 위/아래 방향키 열 다중선택 멀티커서 생성 후, ctrl + 좌우 방향키로 단어별로 이동 가능. 또 다른 비슷한 느낌 마우스 휠 클릭 → 드래그 열 다중선택

Python/공부 2023.03.29

몬스터 턴제게임 만들기 끝

스탯 나누기가 제일 힘들었다ㅎㅎㅎㅎㅎㅎㅎ 기본 hp, power를 100, 20 정도로 생각했었는데 세분화해보았음 [양손검, 방패] [총, 총알] [지팡이, 올빼미]가 가장 좋은 조합이라는거즤~! Player 정보: 무기 종류 보조 무기 hp power mp magic_power 1. 양손검 1. 방패 200 30 30 15 2. 총알 180 20 30 15 3. 올빼미 180 20 50 30 2. 총 1. 방패 150 20 30 15 2. 총알 130 30 30 15 3. 올빼미 130 20 50 30 3. 지팡이 1. 방패 130 10 100 30 2. 총알 100 10 100 30 3. 올빼미 100 20 120 50 Monster 정보: hp power 해파리 100 10 좀비 150 15 베어 ..

파이썬 종료 close() quit() exit() sys.exit() os._exit()

close() 현재 활성화되어 있는 webdriver 하나의 Tab만 종료 quit() 모든 Tab 종료. 2개 이상의 webdriver가 열려있다면 quit()를 써야 한다 exit() exit()는 site-package라는 패키지 안에서 가져온 함수로, site-package 참조문제가 일어날 수 있다 주로 대화형 셀에서 사용된다고 한다 sys.exit() 일반적인 프로그램(vscode)에서 사용되며, sys 모듈을 import 해서 사용한다 import sys elif adventure == 2: print("모험을 포기합니다.") sys.exit() import 하기 싫다면? 👇 raise SystemExit 이 명령어로는 sys를 먼저 가져올 필요가 없다! os._exit()

Python/공부 2023.03.28