반응형

ModuleNotFoundError: No module named ""

상황

jupyter notebook에서 모듈을 불러올 때 에러가 발생했습니다.

'from ___ import ___'

 

 

시도

1. .ipynb -> .py로 변경

모듈을 import 하는데 실패했습니다.

 

2. install import-ipynb

모듈을 import 하는데 성공했습니다.

 

1) conda install -c conda-forge import_ipynb으로는 실패해서 pip install import-ipynb로 설치해야 합니다.

2) import import_ipynb 사용합니다.

3) 불러올 모듈을 불러옵니다.

반응형

'머신러닝 & 딥러닝' 카테고리의 다른 글

[library] seaborn  (0) 2023.04.28
AUC란?  (0) 2023.04.26
'NoneType' object has no attribute 'shape'  (0) 2023.04.13
pin_memory란?  (0) 2023.04.11
torchvision.transforms.ToTensor()  (0) 2023.04.10
반응형

영어 사전

- from non-existent, unknown or hidden resources

 

한국어 뜻

- "갑자기"라는 뜻으로 사용됩니다.

 

예시)

- That money came out of thin air.

저 돈은 갑자기 생겨난거야.

 

- The car came out of thin air.

그 차는 갑자기 나타났어.

반응형

'영어 > 오늘의 영어단어' 카테고리의 다른 글

fend someone off  (0) 2023.05.05
anticlimactic  (0) 2023.05.04
Pound of Flesh  (0) 2023.04.25
cough something up / cough it up  (1) 2023.04.19
Mum's the word 이란?  (0) 2023.04.16
반응형

Pound of Flesh

영어 단어 사전

- A "pound of flesh" was demanded as payment by the character Shylock in William Shakespeare's The Merchant of Venice, which may have taken the idea from the earlier Il Pecorone.

 

영어 뜻

- a payment or penalty exacted to fulfill a deal or punishment.

 

한국어 뜻

- 약속이나 벌칙을 이행하기 위해 부과된 지불 또는 벌금.

 

 

반응형

'영어 > 오늘의 영어단어' 카테고리의 다른 글

anticlimactic  (0) 2023.05.04
out of thin air  (0) 2023.04.25
cough something up / cough it up  (1) 2023.04.19
Mum's the word 이란?  (0) 2023.04.16
harping이란?  (0) 2023.04.15
반응형

문제

연속 부분 수열의 합을 개산하는 문제입니다.

 

* 파라미터 값이 배열의 값으로 들어오기 때문에 index 0가 마지막 부분 연결하는 부분을 신경써야 합니다.

 

자세한 내용!

 

코드

- 수열의 합을 배열에 넣는 방식을 사용했습니다.

- set()으로 중복된 값을 제거 하는 방법을 사용했습니다. 

중복된 값을 제거할 때 기존 리스트의 순서를 유지하고 제거하는 방법과 유지하지 않고 제거하는 방법 중 어떤것이 속도가 빠른지 확인했습니다.

set()과 이중 for()문 사용시 time = 1.0013580322265625e-05 걸렸습니다.

 

 

1. 이중 for

from collections import deque
def solution(elements):
    answer = 0
    elements = deque(elements)

    list = []
    for i in range(len(elements)):
        tmp = 0
        for j in range(len(elements)):
            tmp += elements[j]
            list.append(tmp)
        elements.rotate(-1)
    
    return len(set(list))

반응형
반응형

 

반응형

 

원인

변수를 함수처럼 사용하면 발생하는 에러입니다.

 

해결

변수를 함수처럼 사용하지 않으면 됩니다.

예를 들어 arr = [] 변수 선언 후, arr() 등등 사용하지 않으면 됩니다.

주로  함수명을 변수명으로 쓸 때 발생하는 일입니다.

 

 

반응형
반응형
반응형

 

문제

괄호 회전하기 문제는 처음에 이해하기 어려웠습니다.

이 문제에서 중요한건 문자열만큼 for문을 돌리는 것, for ... else ... 사용해서 answer 값 증가 또는 유지 하는 것입니다.

 

 

자세한 내용!

 

코드

1. 스택

from collections import deque

def solution(s):
    answer = 0
    s = deque(s)
    
    for i in range(len(s)):
        s.rotate(-1)
        stack = []
        for ch in s:
            if ch == '(' or ch == '{' or ch == '[':
                stack.append(ch)
            else:
                if not stack:
                    break

                rear = stack.pop()
                if ch == ')' and rear != '(':
                    break
                elif ch == '}' and rear != '{':
                    break
                elif ch == ']' and rear != '[':
                    break
        
        else:
            if len(stack) == 0:
                answer += 1

    return answer

 

 

 

공부

- deque

- for ... else ...

 

반응형
반응형
반응형

런타임 에러가 발생할   수 있는 원인!

  1. 배열에 할당된 크기를 넘어서 접근했을 때
  2. 전역 배열의 크기가 메모리 제한을 초과할 때
  3. 지역 배열의 크기가 스택 크기 제한을 넘어갈 때
  4. 0으로 나눌 떄
  5. 라이브러리에서 예외를 발생시켰을 때
  6. 재귀 호출이 너무 깊어질 때
  7. 이미 해제된 메모리를 또 참조할 때
  8. 프로그램(main 함수)이 0이 아닌 수를 반환했을 때

 

참조

https://www.acmicpc.net/board/view/22980

 

글 읽기 - 주로 런타임 에러가 발생하는 이유는 무엇인가요?

댓글을 작성하려면 로그인해야 합니다.

www.acmicpc.net

 

반응형
반응형
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/138476

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제

귤의 개수와 귤의 크기를 받아 같은 크기의 귤을 개수만큼 리턴할 때 가작 적은 숫자 구하시오. 

 

시도

- 귤의 개수가 1개면 1을 바로 리턴합니다.

- 귤의 크기 배열 값의 같은 값을 몇개씩 가지고 있는지 구합니다.

- 가장 많이 같은 값을 가지고 있는 순서대고 정리를 합니다.

 

코드

1. 첫 번째 시도

import time
def solution(k, tangerine):
    if k == 1: return 1

    answer = 0
    st = time.time()
    
    counter = [0] * len(set(tangerine))
    for x in tangerine:
    	try: counter[x-1] += 1
    	except: counter[x-1] = 1
    
    counter.sort(reverse=True)
    
    for x in counter:
        answer += 1
        k = k - x
        if k <= 0:
            break
    
    end = time.time()
    print(f'time = {st - end}')
    return answer

런타임 에러가 발생했습니다.

 

2.  런타임 에러 해결 후 코드

def solution(k, tangerine):
    if k == 1: return 1
    answer = 0
    
    counter = [0] * max(tangerine)
    for x in tangerine:
    	try: counter[x-1] += 1
    	except: counter[x-1] = 1
    
    counter.sort(reverse=True)
    
    for x in counter:
        answer += 1
        k = k - x
        if k <= 0:
            break
    return answer

 

 

반응형

+ Recent posts