Python 배열 값 오류
-
Python에서
ValueError: only 2 non-keyword arguments registered
해결 -
ValueError: 배열 요소를 시퀀스로 설정
해결 - 배열 및 값의 일치하는 기본 데이터 유형
Python의 값 오류
는 함수가 올바른 유형의 인수를 가져오지만 해당 유형의 값이 올바르지 않을 때 발생합니다. NumPy 배열에 둘 이상의 요소가 있는 경우 또 다른 오류가 발생하여 오류가 발생합니다.
이 문서에서는 구문 오류와 해결 방법에 대해 설명합니다.
Python에서 ValueError: only 2 non-keyword arguments registered
해결
아래 예에서 NumPy 배열은 2차원이지만 이후에는 1차원 배열도 혼합했습니다. Python은 이를 비균질한 모양으로 인식하여 배열의 구조가 변동하고 따라서 Python에서 값 오류가 발생함을 나타냅니다.
코드 예:
import numpy as np
print(np.array([1, "English"], [2, "Spanish"], [3, "German"], dtype=object))
출력:
ValueError: only 2 non-keyword arguments accepted
동일한 차원으로 배열을 생성하여 이 오류를 해결하려면 배열에 동일한 요소가 있어야 합니다.
코드 예:
import numpy as np
print(np.array([[1, "English"], [2, "Spanish"], [3, "German"]], dtype=object))
출력:
[[1 'English']
[2 'Spanish']
[3 'German']]
ValueError: 배열 요소를 시퀀스로 설정
해결
라이브러리 NumPy를 사용하여 다차원 배열을 만들 때 때때로 ValueError
가 발생합니다. 시퀀스 오류로 배열 요소를 설정할 때 발생합니다.
코드 예:
import numpy
arrayeven = [2, 4, 6, [8, [10, 12]]]
np_array = numpy.array(arrayeven, dtype=int)
출력:
ValueError: setting an array element with a sequence
이 오류를 해결하기 위해 모든 데이터 유형(공통 데이터 유형)을 지원하는 데이터 유형을 사용할 수 있습니다. 다음 예에서는 dtype=int
대신 dtype=object
를 사용했습니다.
코드 예:
import numpy
arrayeven = [2, 4, 6, [8, [10, 12]]]
np_array = numpy.array(arrayeven, dtype=object)
print(np_array)
출력:
[2 4 6 list([8, [10, 12]])]
배열 및 값의 일치하는 기본 데이터 유형
아래 예제에서는 문자열 데이터를 받는 배열의 요소로 배열을 할당하여 오류가 발생합니다.
코드 예:
import numpy
array = ["meeting", "the", "is", "at", "10pm"]
newarray = numpy.array(array, dtype=str)
newarray[1] = ["the", "meeting", "is", "at", "10pm"]
print(newarray)
출력:
ValueError: setting an array element with a sequence
값과 배열의 데이터 유형을 일치시켜 이 오류를 해결할 수 있습니다. 이 문제를 수정하고 값을 배열 요소로 할당할 수 있습니다.
코드 예:
import numpy
array = ["meeting", "the", "is", "at", "10pm"]
newarray = numpy.array(array, dtype=str)
Variable = ["the", "meeting", "is", "at", "10pm"]
if newarray.dtype == type(Variable):
newarray[1] = Variable
else:
print(" Type of value and newarray is not same ")
print(newarray)
출력:
Type of value and newarray is not same
['meeting' 'the' 'is' 'at' '10pm']
라이브러리 NumPy를 사용하면 때때로 값 오류
가 발생합니다. 함수가 올바른 인수 유형을 전달할 수 있지만 해당 유형의 값이 올바르지 않은 경우에 발생합니다.
위에서 언급한 방법을 사용하여 배열 값 오류
를 수정할 수 있습니다.
Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.
LinkedIn관련 문장 - Python Error
- AttributeError 수정: Python에서 'generator' 객체에 'next' 속성이 없습니다.
- AttributeError 해결: 'list' 객체 속성 'append'는 읽기 전용입니다.
- AttributeError 해결: Python에서 'Nonetype' 객체에 'Group' 속성이 없습니다.
- AttributeError: 'Dict' 객체에 Python의 'Append' 속성이 없습니다.
- AttributeError: 'NoneType' 객체에 Python의 'Text' 속성이 없습니다.
- AttributeError: Int 객체에 속성이 없습니다.