首页 > 解决方案 > 将代码输出格式化为表格格式

问题描述

我在这里有以下代码可以管理网站的网络抓取信息,但我希望每 10 秒运行一次此代码以刷新运行此代码,并将此代码的输出格式化为一个漂亮的表格,其中包含顶部的平均值5 个值。我应该怎么做呢?

import json
import requests

url = 'https://otc-api-hk.eiijo.cn/v1/data/trade-market?coinId=2&currency=3&tradeType=sell&blockType=general'
data = requests.get(url).json()

# uncomment this to print all data:
# print(json.dumps(data, indent=4))
print('USDT SGD')
print('----')
for d in data['data']:
    print('{:<30}{}'.format(d['userName'], d['price']))
    
url = 'https://otc-api.hbg.com/v1/data/trade-market?coinId=1&currency=3&tradeType=sell&blockType=general'
data = requests.get(url).json()

print('BTC SGD')
print('----')
for d in data['data']:
    print('{:<30}{}'.format(d['userName'], d['price'])) 

标签: pythonpython-3.xformattingaverage

解决方案


将其转换为 pandas 数据框,使用 nlargest 计算平均值,打印数据和平均值

df = pd.Dataframe(data['data'])
df = df[['userName','price']]
top_5_avg = df.nlargest(5, "price")['price].mean()
print(df)
print(f'The average of top 5 is {top_5_avg}')

推荐阅读