请问下这个for循环为什么只能遍历一次

请问下这个for循环为什么只能遍历一次

service_menu = {
1:'人民币转换美元',
2:'美元转换人民币',
3:'人民币转换欧元',
0:'结束程序'
}
meiyuan = round(7.06,2)
ouyuan = round(0.12,2)

while True:
print('******欢迎使用货币转换服务系统******')
#    i = 1
   for key,value in service_menu.items():
print('{}.{}'.format(key,value))

Your_Choice = int(input('请您选择需要的服务:'))

if Your_Choice == 1:
    print('~~~~~~~~~~~~~~~~~~~~~~')
print('欢迎使用人民币转换美元服务')
your_money = int(input('请输入需要转换的人民币金额:'))
print('您需要转换的人民币为{}元'.format(your_money))
RMB_to_US = round(your_money / meiyuan ,2)
print('兑换成美元为:{} $'.format(RMB_to_US))
print('=====================')

elif Your_Choice == 2:
print('~~~~~~~~~~~~~~~~~~~~~~')
print('欢迎使用美元转换人民币服务')
your_money = int(input('请输入需要转换的美元金额:'))
print('您需要转换的美元为{}$'.format(your_money))
US_to_RMB = round(your_money * meiyuan ,2)
print('兑换成美元为:{} $'.format(US_to_RMB))
print('=====================')

elif Your_Choice == 3:
print('~~~~~~~~~~~~~~~~~~~~~~')
print('欢迎使用人民币转换欧元服务')
your_money = int(input('请输入需要转换的人民币金额:'))
print('您需要转换的人民币为{}€'.format(your_money))
RMB_to_EUR = round(your_money * ouyuan ,2)
print('兑换成美元为:{} $'.format(RMB_to_EUR))
print('=====================')

elif Your_Choice == 0:
print('~~~~~~~~~~~~~~~~~~~~~~')
print('感谢您的使用,祝您生活愉快,再见!')
break

else:
print('输入错误请重新输入')


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小轩 2021-03-20 10:36:34

同学,你好!老师这边运行了同学的代码,只要while条件成立,for循环是可以多次遍历的,每转换一次货币,for循环都会执行一次
http://img1.sycdn.imooc.com//climg/60555e48098dd48c06470560.jpg
如果同学还有疑问,可继续在问答区提问
祝:学习愉快!

  • 提问者 Death小少爷 #1

    http://img1.sycdn.imooc.com//climg/6055611a096fce6004510142.jpg可是为什么我运行下来是这样的?是我环境出问题了吗?

    2021-03-20 10:43:01
  • 好帮手慕小轩 回复 提问者 Death小少爷 #2

    同学,你好!if判断与上面的for循环对齐即可实现,如下图所示:
    http://img1.sycdn.imooc.com//climg/60556bb9097142d806450513.jpg
    祝:学习愉快!

    2021-03-20 11:30:16
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师