반응형

Python/파이썬 기초 57

파이썬에서 다른 폴더 내 py 파일을 import하는 방법 정리

Python에서 다른 폴더 내의 py 파일을 모듈로 임포트해야 하는 경우가 있습니다. 이 경우 다른 디렉토리에 속한 py 파일의 함수들을 가져오는 방법을 몇 가지 케이스로 나누어 정리해보도록 하겠습니다. 그 전에, py 파일 import에 관한 기본적인 내용에 대한 정리가 먼저 필요하시다면, 아래 글도 같이 참고해보세요. py 파일 import 방법, if __name__ == '__main__' 의미, Colab에서 py 파일 가져오기 py 파일 import 다른 py 파일 내에 작성된 함수나 클래스를 가져오고 싶은 경우가 있을 것입니다. 또한, 작성된 코드에서 if __name__ == '__main__' 이라는 부분을 많이 보셨을 수 있는데요. 이번 글에서는 jimmy-ai.tistory.com 여..

파이썬 변수/함수 타입 명시 방법(Type Hints)

Python Type Hints 파이썬에서 코드 작성 시에 변수 및 함수 input/output 자료형에 대해 알림 기능을 해줄 수 있는 Type Hints 기능에 대하여 살펴보도록 하겠습니다. 변수 선언 시 타입 명시 방법 파이썬에서는 변수의 자료형에 제한이 없어 기존의 방법대로 변수를 선언할 경우 아래처럼 기존 자료형과 다른 타입의 값을 넣는 것에 제약이 없습니다. a = "abcde" # 문자열로 선언된 변수 a a = 400 # 정수형 등 다른 자료형의 값을 할당하는 것에 제약이 없음 만일 문자열로 선언된 변수에 대하여 문자열이 아닌 다른 타입의 값으로 재할당될 경우 경고 메시지를 주고 싶다면 아래와 같이 Type Hints 방법을 적용할 수 있습니다. # 변수명: 자료형 = 값 a: str = ..

파이썬 과학적 표기법(지수 표현) 출력 양식 지정 방법

Python Scientific Notation 파이썬에서 특정 수를 지수 표현으로 나타내어 1.23e+8, 4.753e-6과 같이 과학적 표기법으로 출력하는 방법을 정리해도록 하겠습니다. 일반적인 소수점 자릿수 출력 양식은 "%.2f"처럼 지정하는 반면, 과학적 표기법의 경우에는 "%.2e"처럼 f 대신 e로 지정해주시면 해당 자릿수까지 반올림되어 반영된 지수 표현으로 출력이됩니다. a = 1234567.89012 ### 기존 포맷팅 예시 ### print(a) # 1234567.89012 print("%.2f"%a) # 1234567.89 print("%.5f"%a) # 1234567.89012 ### 과학적 표기법 예시 ### print("%.2e"%a) # 1.23e+06 print("%.5e"%..

파이썬 문자열 인덱싱, 슬라이싱 방법 총정리

python의 string 자료형에서 일부를 추출하는 인덱싱과 슬라이싱에 대하여 경우의 수를 총망라하여 이해하기 쉽게 정리해보도록 하겠습니다. 파이썬 문자열 인덱싱 방법 인덱싱은 문자열 전체에서 특정 위치에 해당하는 1글자만을 가져오는 과정을 의미합니다. 기본 인덱싱 방법 기본적으로 문자열[인덱스 위치 번호] 형태로 해당 위치의 글자를 가져오게 되는데 이 때 가장 앞 문자의 인덱스 번호는 0이 기준이 되는 점을 유의해주세요. 대표적인 문자열 인덱싱 예시는 아래와 같습니다. a = "0123456789" b = "hello world!" # a의 1번째, 6번째 글자 인덱싱 print(a[0]) # '0' print(a[5]) # '5' # b의 2번째, 7번째 글자 인덱싱(공백도 자리에 포함됨에 유의) ..

파이썬에서 다른 py 파일의 변수 값을 가져오는 방법

파이썬에서 다른 파일에서 선언했던 변수를 그대로 호출하고 싶은 경우가 있습니다. 결론부터 말하면, 변수도 함수나 클래스를 가져올 때처럼 import 혹은 from ~ import로 똑같이 가져올 수 있습니다. 예시를 하나 들어서 이해를 도와드려보도록 하겠습니다. 아래와 같은 my_file.py 파일이 있다고 가정해보겠습니다. a = 3 b = 5 c = a + b a -= 3 최종 실행 결과는 a = 0, b = 5, c = 8이 저장되어 있음을 참고해주세요. import로 다른 파일 변수 참조 먼저, import 형태로 해당 py 파일을 모듈로 가져와 보겠습니다. 모듈 호출 후, 모듈명.변수명 형태로 변수들을 가져올 수 있습니다. import my_file # my_file.py 내의 변수들 참조 ne..

파이썬 예약어 종류 출력 방법, 예약어의 의미(변수명 지정 불가)

Python 예약어 확인하기 / 예약어란? 현재 버전의 파이썬에서 예약어의 종류를 출력해보고 예약어가 갖는 의미에 대하여 정리해보도록 하겠습니다. 예약어 종류 print 방법 파이썬에서 예약어 종류를 출력하는 방법은 간단합니다. keyword 모듈을 import한 뒤, kwlist 속성을 출력해주시면 됩니다. import keyword print(keyword.kwlist) # 출력 결과 예시 : 파이썬의 버전마다 약간씩 다를 수도 있습니다. ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', ..

파이썬 pop의 시간 복잡도에 대한 고찰(맨 뒤, 중간, 맨 앞 위치 비교 및 remove/del과의 비교)

Python pop() 함수의 시간 복잡도는 O(1)인가? 파이썬으로 원소를 제거하는 pop 함수의 시간 복잡도는 흔히 O(1)으로 알려져있지만 이 사항에는 맨 뒤 원소를 제거하는 상황이라는 조건이 반드시 필요합니다. 이번 글에서는 이에 대한 고찰을 간단한 예시 비교를 통하여 진행해보도록 하겠습니다. 1. 맨 뒤 위치 원소 pop : O(1) pop 함수를 pop()처럼 default 인자로 사용할 경우 맨 뒤 위치(-1번 인덱스)가 자동으로 지정되어 사용되는데, 이 경우는 맨 뒤의 원소만 제거하고 기존 원소들은 그대로 놓아둘 수 있으므로 O(1)의 시간 복잡도가 맞습니다. 1천만개의 원소를 가진 리스트에서 1만번 pop을 진행시켜본다면 실제로 아래와 같이 약 0.002초 만에 완료된 모습을 볼 수 있습..

파이썬 자료형별 '같다'의 기준 정리(비교연산자 == 기준), 클래스에서 == 및 != 구현 방법(__eq__, __ne__)

Python ==, != 자료형별 기준 및 클래스 내 구현 예제 파이썬에서 숫자형, 문자열, 리스트 및 딕셔너리 등 여러 자료형의 비교 연산자에서 같음이 성립하는 기준을 정리해보고, 직접 구현된 클래스 객체 간의 비교 연산자 결과를 구현해보는 예제를 다루어보도록 하겠습니다. 자료형별 '같다'의 기준(== 결과 True) 예제 1. 정수형 a = 1 b = 1 c = 2 print(a == b) # True print(a == c) # False 정수형의 경우 같은 숫자라면 True, 다른 숫자라면 False가 반환됩니다. 2. 실수형 a = 0.1 b = 0.10000000000000 c = 0.10000000000001 print(a == b) # True print(a == c) # False 실수형..

파이썬 로또 번호 추출, 당첨 등수 구하기 및 구매 시뮬레이션 구현 예제

Python 로또 프로그램 구현 실습 파이썬으로 로또(Lotto) 복권의 당첨 번호를 추출하고 주어진 상황의 등수를 구해보며 여러 번 구매하는 시뮬레이션의 결과를 출력하는 과정들을 구현하여 간단한 로또 프로그램을 만들어보는 예시를 다루어 보겠습니다. 로또 당첨 번호 추출 1~45 번호 중 중복 없이 7개를 뽑아 6개는 당첨 번호, 1개는 보너스 번호로 사용하게 됩니다. 이는 넘파이 모듈의 np.random.choice 함수를 활용하면 쉽게 번호를 뽑을 수 있습니다. import numpy as np numbers = np.random.choice(np.arange(1, 46), 7, replace = False) # 1~45 중 7개 추출 win_numbers = numbers[:-1] # 당첨 번호 6..

파이썬 2차원 배열 선언, 값 추출/변경, 정렬(feat. 리스트, 넘파이 배열)

Python 2차원 array 다루기 예제(리스트 vs np.array) 파이썬에서 행렬 형태의 2차원 배열을 선언해보고 값을 추출/변경하며 내부 배열을 기준으로 정렬하는 방법들에 대해서 리스트를 활용한 방법과 Numpy array를 활용한 경우로 나누어 다루어보도록 하겠습니다. 1. 리스트를 활용한 2차원 배열(이중 리스트) 2차원 리스트 배열 선언 리스트에서는 2차원 배열을 선언할 때, 이중 for문을 사용하는 것이 가장 편리합니다. 바깥 for문에서 내부 배열의 리스트를 추가해주고 안쪽 for문에서는 각 내부 배열에 새로운 값을 추가해주는 방식입니다. 참고로, 각 내부 배열의 원소 개수가 모두 같지 않아도 됩니다. 모든 원소가 0인 4 * 3 크기의 배열 선언 예시는 아래와 같습니다. arr = [..

반응형