关于参数传递的问题

来源:3-7 函数的三种使用技巧

程序蛙

2019-08-25 21:22:46

def calc_exchange_rate(amt,source='RMB',target='USD'):
   print(source,target)
   if source == 'RMB' and target == 'USD':
       result = amt / 6.7516
       print('人民币转换美元计算成功')
       return result
   elif source == 'RMB' and target == 'EUR':
       result = amt / 7.7512
       print('人民币转换欧元计算成功')
       return result
老师你好,在这个例子中,给第二个形参source和第三个形参target都给了默认值,如果我想实现RMB转换成EUR的话,print(calc_exchange_rate(100,'EUR')),经测试这样写,就把'URE'赋值给了source,print(calc_exchange_rate(100,'RMB',EUR')),如果这样写,给source设置默认值就失去了意义,求正确做法??

写回答

1回答

时间,

2019-08-26

同学,你好。同学是要将USD修改为EUR吗?在传实参时,也可以使用关键字参数的形式传递,要注意一点:位置参数必须放在关键字左边,否则报错。

参考代码:

http://img.mukewang.com/climg/5d6359400001621806860450.jpg

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

0

0 学习 · 8160 问题

查看课程