请教这样一个入门Python程序该怎么写?

人民币和美元是世界上通用的两种货币之一,写一个程序进行货币间币值转换,其中:
人民币和美元间汇率固定为:1美元 = 6.78人民币。
程序可以接受人民币或美元输入,转换为美元或人民币输出。人民币采用RMB表示,美元USD表示,符号和数值之间没有空格。

【输入】
示例1:RMB123
示例2:USD20

【输出】
示例1:USD18.14
示例2:RMB135.60

为什么重新问一遍,我的程序有什么问题么?

import re
money = input().lower()
tmp=re.findall('usd|rmb',money)
if len(tmp)==0 or len(tmp)>1:
    print('wrong')
money=re.sub(tmp[0],'',money)
try:
    num=float(money)
    if 'usd' in tmp:
        print('RMB%.2f'%(num*6.78))
    else:
        print('USD%.2f'%(num/6.78))
except:
    print('wrong')

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-17
d'q'd'w'q'e'w'da'q'e'w'd'q'we'd'Q'w'da'A'w'da'z'q'd'q
第2个回答  2018-04-09
money=input()
if money[0:3] in ['RMB']:
    U=(eval(money[3:]))/6.78
    print("USD{:.2f}".format(U))
elif money[0:3] in ['USD']:
    R=(eval(money[3:]))*6.78
    print("RMB{:.2f}".format(R))

第3个回答  2018-04-06
TempStr = input()#调取用户输入并赋值给TempStr
if TempStr[0:3] in ['RMB']:#如果TempStr的第一位到第三位字符(包含第三位)是RMB就执行下面函数
****C = eval(TempStr[3:])/6.78
****print("USD{:.2f}".format(C))#将C的值保留两位小数并赋值给{:.2f},然后输出
elif TempStr[0:3] in['USD']:#如果TempStr的第一位到第三位字符(包含第三位)是USD就执行下面函数
****F = 6.78*eval(TempStr[3:])
****print("RMB{:.2f}".format(F))#将F的值保留两位小数并赋值给{:.2f},然后输出
else:
****print()
#注释:*表示空格
相似回答