关于#python#的问题,请各位专家解答!

为什么前面这个不可以但是后面这个就行?提示的eval那里格式错误,求解答,谢谢。

img


img

你括号都不成对,语法都是错的,编译都过不去
仔细看你写的print
应该是print(xxx.format(xx))
你写的是print(xxx.format(xx)
缺少右括号

Curstr = str(input()) #注意Curstr是字符串类型,要加str()转换
if Curstr[:3] == 'RMB':
    c = eval(Curstr[:3})/6.78
    print('USD{:.2f}'.format(c)) #别忘了保持括号成对
elif Curstr[:3] in ['USD']:
    u = eval(Curstr[:3})*6.78
    print('RMB{:.2f}'.format(u))

还有什么问题直接评论就行了

CurStr是个字符串,CurStr[:3]值为'123',还是个字符串。
你得先转换类型

第一张图:
第七行少了一个括号
第一行在输入的加上str()强制转换