一、汇率兑换V1.0
主要知识点:注释:说明信息,是不被执行的,单行注释用#,多行注释用三个单引号
命名:命名只能使用字母、数字和下划线;且须保证命名的唯一性;且不能以数字开头,Python是区分字母大小写的,且命名不能和保留字相同
# 查询保留字
import keyword
print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']字符串索引:正向索引(从左向右);反向索引(从右向左);区间索引[A:B],从位置A到B的部分字符串,不包含位置B
# 字符串索引
s = 'python'
# 正向索引,以0开始
s[0]
'p'
s[3]
'h'
# 反向索引
s[-1]
'n'
s[-3]
'h'
# 区间索引
s[0:3]
'pyt'
s[:3]
'pyt'
s[-3:]
'hon'
s[-6:-3]
'pyt'输入函数input()、输出函数print()
# -*- coding:utf-8 -*-
"""@author:Angel@file:currency_converter1.0.py@time:2018/11/9 22:[email protected]功能:将外币换算成人民币,或者相反,仅考虑一种外币(如:美元)"""
# 人民币的输入
RMB_str_value = input('请输入人民币(CNY)金额:')
# 将字符串转化成数字
RMB_value = eval(RMB_str_value)
print(RMB_value)
# 汇率
usd_vs_rmb = 6.77
# 汇率计算
usd_value = RMB_value / usd_vs_rmb
# 输出结果
print('美元(USD)金额是:', usd_value)
二、汇率兑换V2.0
主要知识点:分支语句if else
# -*- coding:utf-8 -*-
"""@author:Angel@file:currency_converter2.0.py@time:2018/11/10 22:[email protected]功能:将外币换算成人民币,或者相反,仅考虑一种外币(如:美元)@2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算"""
# 汇率
usd_vs_rmb = 6.77
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额:')
print(currency_str_value)
# 获取货币单位
unit = currency_str_value[-3:]
print(unit)
# 判断货币是美元还是人民币,并进行相应的转换计算
if unit == 'CNY':
usd_value = eval(currency_str_value[:-3]) / usd_vs_rmb
print('美元(USD)金额是:', usd_value)
elif unit == 'USD':
rmb_value = eval(currency_str_value[:-3]) * usd_vs_rmb
print('人民币(CNY)金额是:', rmb_value)
else:
print('该版本尚不支持其他货币')
三、汇率兑换V3.0
主要知识点:循环语句while
# -*- coding:utf-8 -*-
"""@author:Angel@file:currency_converter3.0.py@time:2018/11/11 22:[email protected]功能:将外币换算成人民币,或者相反,仅考虑一种外币(如:美元)@2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算@3.0增加功能:程序可以一直运行,直到用户选择退出"""
# 汇率
usd_vs_rmb = 6.77
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额(退出程序输入Q):')
print(currency_str_value)
i = 0
while currency_str_value != 'Q':
i = i + 1
print('循环次数', i)
# 获取货币单位
unit = currency_str_value[-3:]
print(unit)
# 判断美元还是人民币,并进行相应的转换运算
if unit == 'CNY':
usd_value = eval(currency_str_value[:-3]) / usd_vs_rmb
print('美元(USD)金额是:', usd_value)
elif unit == 'USD':
rmb_value = eval(currency_str_value[:-3]) * usd_vs_rmb
print('人民币(CNY)金额是:', rmb_value)
else:
print('该版本尚不支持其他货币')
print('**************************************************************')
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额(退出程序输入Q):')
print('程序已退出!')
四、汇率兑换V4.0
主要知识点:自定义函数的定义与调用
Def<函数名>(<参数列表>):
<函数体>
Return <返回值列表>
# -*- coding:utf-8 -*-
"""@author:Angel@file:currency_converter4.0.py@time:2018/11/11 22:[email protected]功能:将外币换算成人民币,或者相反,仅考虑一种外币(如:美元)@2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算@3.0增加功能:程序可以一直运行,直到用户选择退出@4.0增加功能:将汇率兑换功能封装到函数中"""
def convert_currency(im, er):
# 汇率兑换函数
out = im * er
return out
# 汇率
usd_vs_rmb = 6.77
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额:')
print(currency_str_value)
# 获取货币单位
unit = currency_str_value[-3:]
print(unit)
# 判断美元还是人民币,并进行相应的处理
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])
# 调用函数
out_money = convert_currency(in_money, exchange_rate)
# 输出结果
print('兑换后的金额:', out_money)
else:
print('该版本尚不支持其他货币')
五、汇率兑换V5.0
主要知识点:匿名函数lambda,用于简单的能够在一行内表示的函数,计算结果为返回值
<函数名>=lambda<参数列表>:<表达式>
# -*- coding:utf-8 -*-
"""@author:Angel@file:currency_converter5.0.py@time:2018/11/11 22:[email protected]功能:将外币换算成人民币,或者相反,仅考虑一种外币(如:美元)@2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算@3.0增加功能:程序可以一直运行,直到用户选择退出@4.0增加功能:将汇率兑换功能封装到函数中@5.0增加功能:(1)使程序结构化 (2)简单函数的定义lambda"""
def main():
# 汇率
usd_vs_rmb = 6.77
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额:')
print(currency_str_value)
# 获取货币单位
unit = currency_str_value[-3:]
print(unit)
# 判断美元还是人民币,并进行相应的处理
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定义函数
convert_currency2 = lambda x: x * exchange_rate
# 调用lambda函数
out_money = convert_currency2(in_money)
print('兑换后的金额:', out_money)
else:
print('该版本尚不支持其他货币')
if __name__ == '__main__':
main()