파이썬에서 datetime.timezone()을 이용한 시간대 설정

by joviansummer original STEEMIT post: https://steemit.com/blog/@joviansummer/datetime-timezone 파이썬에서 datetime.timezone()을 이용해서 datetime 객체의 시간대를 설정할 수 있습니다. 예를 들어 한국시간(KST)은 GMT+9시간이므로 아래와 같이 설정해서 현재 시각을 구할 수 있습니다. import datetime KST = datetime.timezone(datetime.timedelta(hours=9)) now_kst = datetime.datetime.now(tz=KST) 시간대 정보가 없는 datetime 객체의 경우에는 앞의 예제 코드에서 정의된 변수 KST를 이용해서 아래와 같이 시간대를 할당할 수 있습니다. # 시간대 정보 없는 UTC 기준 현재시각 가져오기 - utcnow() now = datetime.datetime.utcnow() # 시간대 정보 추가 now_kst = now.astimezone(KST) @joviansummer의 스팀 프로젝트 스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다. ( https://steemitwallet.com/~witnesses ) jswit 증인 노드 프로젝트를 시작합니다. jsup 업보팅(upvoting) 서비스 소개 jsup 수혜자 지정 기능 추가 jsup 2.0 - 업보팅을 다시 위대하게 jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기 Steemit-Search - 스팀잇 포스팅 검색 STEEM.NFT - 디지털 아트 보존 프로젝트

파이썬 beem에서 특정 계정의 스팀파워 임대 정보 조회하기

by joviansummer
original STEEMIT post: https://steemit.com/blog/@joviansummer/42731a-beem


파이썬 beem에서 스팀파워(SP) 임대 정보를 조회하는 방법입니다. Account 객체의 get_vesting_delegations() 함수를 사용하며, 가져오는 결과의 형식은 리스트(list)입니다. 즉, 어느 계정에 얼만큼을 임대했는지가 리스트 형식으로 생성됩니다. 예제는 아래와 같습니다.

from beem import Steem
from beem.account import Account

node_list = ["https://api.steemit.com"]

steem_id = 'joviansummer'

s = Steem(node=node_list)
a = Account(steem_id, blockchain_instance=s)
deleg_list = a.get_vesting_delegations()

print(deleg_list)

[{'id': 1665269, 'delegator': 'joviansummer', 'delegatee': 'avle', 'vesting_shares': {'amount': '18247110554', 'precision': 6, 'nai': '@@000000037'}, 'min_delegation_time': '2022-04-06T12:21:45'}, {'id': 1601704, 'delegator': 'joviansummer', 'delegatee': 'jsup', 'vesting_shares': {'amount': '904710656311', 'precision': 6, 'nai': '@@000000037'}, 'min_delegation_time': '2021-12-05T11:03:30'}, {'id': 1548032, 'delegator': 'joviansummer', 'delegatee': 'jswit', 'vesting_shares': {'amount': '637779499567', 'precision': 6, 'nai': '@@000000037'}, 'min_delegation_time': '2021-09-21T15:02:39'}, {'id': 1660722, 'delegator': 'joviansummer', 'delegatee': 'steem.nft', 'vesting_shares': {'amount': '171836905117', 'precision': 6, 'nai': '@@000000037'}, 'min_delegation_time': '2022-03-23T14:04:03'}]

위의 결과를 보면, 리스트의 각 원소가 딕셔너리(dict)임을 알 수 있습니다. 첫번째 원소만 다시 보면 아래와 같습니다.

{'id': 1665269, 'delegator': 'joviansummer', 'delegatee': 'avle', 'vesting_shares': {'amount': '18247110554', 'precision': 6, 'nai': '@@000000037'}, 'min_delegation_time': '2022-04-06T12:21:45'}

임대한 계정(delegator)은 joviansummer, 임대를 받은 계정(delegatee)은 avle입니다. 임대량은 스팀파워가 아니라 VESTS값으로 표시됩니다. 임대량에 대한 정보는 'vesting_shares' 하위에 있으며, 'precision'값이 6이면 'amount'값이 소수점 6자리까지 표시된다는 뜻입니다. 즉, 위의 예시에서 avle에 임대한 VESTS는 18247.110554VESTS가 됩니다.


@joviansummer의 스팀 프로젝트

스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다.
(https://steemitwallet.com/~witnesses)

jswit 증인 노드 프로젝트를 시작합니다.

jsup 업보팅(upvoting) 서비스 소개

jsup 수혜자 지정 기능 추가

jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기

STEEM.NFT - 디지털 아트 보존 프로젝트

Posted through the AVLE Dapp (https://avle.io)

Comments

Popular posts from this blog

Nuitka - 파이썬 스크립트를 바이너리 실행 파일로 변환

파이썬에서 스팀잇 ID 및 포스팅 키 유효성 확인

파이썬에서 시간대(timezone) 변경