본문 바로가기

Programming Language/Python8

[Python] 1_000은 도대체 뭘까 백준을 풀면서 다른 사람들 코드를 보는 중 i = 1_000 또는 i = 1_000_000 같은 코드를 봤다. 바로 스택오버플로우에 찾아봤다. https://stackoverflow.com/questions/49837534/what-do-1-000-and-100-000-mean What do 1_000 and 100_000 mean? Since I've been learning Python, I've sometimes seen beginner examples that look like this: sum_sq = [None] * 1_000 I've bought three Python books and none have mentioned what the 1_000 and 100_000 stackoverflo.. 2022. 6. 14.
[Python] 리스트 복사하기 (일차원 & 다차원) 코드 우선 리스트를 복사하려면 일차원이냐 다차원이냐에 따라서 나뉜다. 일차원 리스트 복사하기 # 방법 1 list2 = list1.copy() # 방법 2 list2 = list1[:] # 방법 3 list2 = list(list1) 다차원 리스트 복사하기 import copy list2 = copy.deepcopy(list1) list1 = list2는? 보통은 list1의 요소를 list2에다가 복사하고 싶다면 list2 = list1하면 되는 것 아니냐고 생각할 것이다. 그러나 이렇게 리스트를 복사한다면 list2의 요소를 변경했을 때 list1의 요소도 변경된다. 확인해보자. # 일차원 배열 list1 = [1, 2, 3, 4] list2 = list1 list2[0] = 0 print(list1.. 2022. 3. 25.
[Python] input과 sys.stdin.readline의 차이 파이썬으로 백준 문제를 풀어본 사람이라면 가끔씩 많은 입력을 받는 문제를 풀 때 시간과 발생한 적이 있을 것이다. 이럴 때 input 대신 sys.stdin.readline을 사용하면 시간이 초과되지 않는다. 과연 이것은 무엇이길래 입력받는 속도를 향상할 수 있는 걸까? 답을 찾기 위해 우선 input과 sys.stdin.readline의 동작에 대해서 알아보도록 하자. input 공식 문서에 따르면, input 함수는: 1. 입력으로 들어오는 한 줄을 읽고, 2. 문자열로 변환하고, 3. 개행 문자를 제거한 뒤, 4. 값을 반환하는 형식으로 동작한다고 한다. 입력 하나를 받는데 4단계의 과정을 거치는 것이다. sys.stdin.readline 우선 sys와 stdin의 의미를 알아보도록 하자. sys .. 2021. 12. 10.
[Python] 삼항 연산자 문법 참일 때 값 if 조건 else 거짓일 때 값 위의 코드와 아래 코드는 동일한 의미이다. 간단한 if-else 코드를 한 줄로 줄여주니 코드가 간결해진다. if 조건: 참일 때 값 else: 거짓일 때 값 응용 삼항 연산자를 중첩하여 사용할 수 있다. 참일 때 값 if 조건 else 참일 때 값 if 조건 else 거짓일 때 풀어서 쓰자면 아래와 같다. if 조건: 참일 때 값 else: if 조건: 참일 때 값 else: 거짓일 때 값 조건이 적다면 삼항을 중첩하여 써도 괜찮지만, 아니라면 코드의 가독성이 떨어지기에 안 사용하는 것이 좋다고 생각한다. 참고: 1. https://wikidocs.net/20701 04. 삼항 연산자(Ternary operators) ### 1. 삼항 연산자(Tern.. 2021. 10. 22.
[Python] 사칙연산 연산자 연산자 해설 + 더하기 - 빼기 / 나누기 * 곱하기 // 몫 % 나머지 ** 제곱 참고: 1. https://includestdio.tistory.com/16 [Python] 사칙연산을 위한 7가지 연산자 1. 파이썬(Python) 사칙연산을 위한 7가지 연산자 + 덧셈 - 뺄셈 * 곱하기 ** 거듭 제곱 / 나누기 // 나누기 연산 후 소수점 이하의 수를 버리고, 정수 부분의 수만 구함 % 나누기 연산 후 몫이 아닌 나 includestdio.tistory.com 2. https://wikidocs.net/1153 4.1. 산술 연산자 ### 산술 연산자 (Arithmetic Operators): a = 10, b = 20, c = 3 이라 가정한다. | Operator | Description | .. 2021. 10. 22.
[Python] dictionary / 프로그래머스 숫자 문자열과 영단어 Python에는 Dictionary 라는 자료형이 있다. dictionary = {key : value, key1 : value1} 위에 같은 구조로 이루어져 있는데, 마치 사전같이 영어 "hello"가 한국어로는 "안녕"인 것처럼, key라는 변수가 value라는 값을 가지는 것이다. 이런 형태를 연관 배열(Associative array) 또는 해시(Hash)라고 한다. 사용하기 key는 마치 이름과도 같아서 변하지 않을 값을 사용해야 하지만 value의 값은 상관없다. dict = {1.2 : "float", 1 : "int", "abc" : "string", "num" : 123} dict[1.2] = "float" dict[1] = "int" dict["abc"] = "string" dict[".. 2021. 10. 12.