728x90
반응형
SMALL
데이터 유형
브라우니는 일반적으로 나타내는 값을 간소화하기 위해 사용자 정의 데이터 유형을 사용합니다.
Wei
Wei
클래스는 이더리움의 양을 나타내는 값으로 사용됩니다. 이 클래스는 문자열, 과학적 표기법 및 16진 문자열을 wei로 표현된 정수로 변환할 수 있는 int
서브 클래스입니다.
>>> Wei("1 ether")
1000000000000000000
>>> Wei("12.49 gwei")
12490000000
>>> Wei("0.029 shannon")
29000000
>>> Wei(8.38e32)
838000000000000000000000000000000
다른 값들도 비교, 덧셈, 뺄셈을 수행하기 전에 Wei
**로 변환됩니다:
>>> Wei(1e18) == "1 ether"
True
>>> Wei("1 ether") < "2 ether"
True
>>> Wei("1 ether") - "0.75 ether"
250000000000000000
브라우니 메소드가 이더 양을 나타내는 입력을 받으면, 해당 값은 Wei
로 변환됩니다. 계약 호출 및 이벤트에서 반환되는 잔액과 uint
/int
값은 Wei
로 제공됩니다.
>>> accounts[0].balance()
100000000000000000000
>>> type(accounts[0].balance())
<class 'brownie.convert.Wei'>
Fixed
Fixed
클래스는 Vyper 소수 값을 다루는 데 사용됩니다. 이것은 문자열, 정수 및 Wei
에 대한 비교, 덧셈 및 뺄셈을 허용하는 decimal.Decimal
의 하위 클래스입니다.
>>> Fixed(1)
Fixed('1')
>>> Fixed("3.1337")
Fixed('3.1337')
>>> Fixed("12.49 gwei")
Fixed('12490000000')
>>> Fixed("-1.23") == "-1.2300"
True
실수에 대해 할당, 비교 또는 산술 연산을 수행하려고 하면 TypeError
이 발생합니다.
>>> Fixed(3.1337)
Traceback (most recent call last):
File "<console>", line 1, in <module>
TypeError: Cannot convert float to decimal - use a string instead
>>> Fixed("-1.23") == -1.2300
Traceback (most recent call last):
File "<console>", line 1, in <module>
TypeError: Cannot compare to floating point - use a string instead
728x90
반응형
LIST
'블록체인 (Block Chain) > 이더리움' 카테고리의 다른 글
[브라우니 (Brownie)] 16. 픽스처 및 마커 참조 (1) | 2023.06.18 |
---|---|
[브라우니 (Brownie)] 15. 단위 테스트 작성하기 (0) | 2023.06.18 |
[브라우니 (Brownie)] 13. 트랜잭션 검사 및 디버깅하기 (0) | 2023.06.16 |
[브라우니 (Brownie)] 12. 블록체인과 상호작용하기 (0) | 2023.06.16 |
[브라우니 (Brownie)] 11. 트랜잭션 가스 가격 설정하기 (0) | 2023.06.16 |