Python入门-12:模块化、lambda函数

案例1-汇率兑换5.0

案例描述

Python入门-12:模块化、lambda函数

案例分析

Python入门-12:模块化、lambda函数

模块化-写主函数(记得调用)

Python入门-12:模块化、lambda函数
Python入门-12:模块化、lambda函数
可以看到"name “是"main
Python入门-12:模块化、lambda函数
查看函数结构方法:
法一:
Python入门-12:模块化、lambda函数
Python入门-12:模块化、lambda函数
法二:
直接缩略
Python入门-12:模块化、lambda函数

lambda函数(一行函数)

Python入门-12:模块化、lambda函数
可以把汇率兑换子函数写成lambda函数
Python入门-12:模块化、lambda函数

所有程序

'''汇率兑换'''
 # def convert_currency(im ,er):
 #      out=im*er
 #      return out
 '''主函数'''
 def main():
    usd_vs_rmb = 6.77                              # 暂设汇率为6.77
    currency_str_value = input('请输入带单位的货币金额:')
    unit = currency_str_value[-3:]                  # 获取单位
    if unit == 'CNY':
        exchange_rate = 1/usd_vs_rmb
    elif unit == 'USD':
        exchange_rate = usd_vs_rmb
    else:
        # 其他情况
        exchange_rate = -1

    if exchange_rate != -1:
        in_money = eval(currency_str_value[:-3])
        # 使用lambda定义函数
        converter_currency2 = lambda x : x*exchange_rate
        # 调用函数
        # out_money = convert_currency(in_money, exchange_rate)
        # 调用lambda函数
        out_money = convert_currency2(in_money)
        print('兑换后的金额', out_money)
    else:
        print('目前版本尚不支持该种货币!')
# __name__一直为__main__,所以为真,执行main函数(不调用main函数,它是不会执行的,函数没有结果)
if __name__ == "__main__":
     main()  # 通常都是这么调用主函数

小结:

Python入门-12:模块化、lambda函数