python字典编程问题

字典编程:
(1)买4只股票,编号1~4,股票代码、股票名称和买入价分别是:601398、工商银行、5.51000平安银行、8.94;601939、建设银行、6.89;601328、交通银行、5.61。请用字典实现根据编号查询购买的股票信息。要求:输入编号,可以一直查询购买的股票信息,直到输入编号以外的任意数字显示“无查询结果”,并结束程序。
(2)让股票信息不是直接以列表形式显示,而是如同:“股票代码:601939股票名称:建设银行,买入价:6.89”这种方式显示,修改程序。


dic =  {1:{'股票代码':601398,'股票名称':'工商银行','买入价':5.51000},2:{'股票代码':601929,'股票名称':'平安银行','买入价':8.94},
        3:{'股票代码':601939,'股票名称':'建设银行','买入价':6.89},4:{'股票代码':601328,'股票名称':'交通银行','买入价':5.61}}
while True:
    num = int(input("编号:"))
    if num in range(1,5):
        print('股票代码:{},股票名称:{},买入价:{}'.format(dic[num]['股票代码'],dic[num]['股票名称'],dic[num]['买入价']))
    else:
        print('无查询结果')
        break

img

stock = {
    '601398':{'acc':'工商银行','bid':5.51},
    '000001':{'acc':'平安银行','bid':8.94},
    '601939':{'acc':'建设银行','bid':6.89},
    '601328':{'acc':'交通银行','bid':5.61}
    }

while True:
    a = input('请输入股票代码:')
    if stock.get(a):
        print(f"股票代码:{a}\t股票名称:{stock[a]['acc']}\t买入价:{stock[a]['bid']}")
    else:
        print('无查询结果')
        break