刚开始接触Python,一直以来也没理清什么头绪,看大牛的建议,打算写点笔记,稍稍理一理吧。
第一节课 汇率兑换
1、字符串的提取
在Python中字符串是从0开始排序的,最后一个字符是从-1开始往前排序的,即
0 1 2 3 4 5
p y t h o n
-6 -5 -4 -3 -2 -1
则要提取输入字符串中金额的单位就可以用[-3:]来提取CNY或者是USD
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额:')
# 获取货币单位
unit = currency_str_value[-3:]
在提取完货币的单位后,再提取货币的金额
rmb_str_value = currency_str_value[:-3]
rmb_value = eval(rmb_str_value)
其中[:-3]表示从开头的字符一直提取到-2位置的字符,不包括-3位置的字符。通过eval函数将提取到的字符转换为数字格式。
2、if语句
if语句同C语言等其他语言使用并没有差别,注意结尾要加冒号,同时Python对于缩进有着严格要求,用来代替{},if下的代码不能和if判断语句对其,使用Tab键进行缩进。
if unit == 'CNY':
elif unit == 'USD':
else:
3、while循环语句
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额(退出程序请输入Q):')
while currency_str_value != 'Q':
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额(退出程序请输入Q):')
print('程序已退出!')
4、函数封装
def convert_currency(im, er):
"""
汇率兑换函数
"""
out = im * er
return out
# 汇率
USD_VS_RMB = 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])
# 调用函数
out_money = convert_currency(in_money, exchange_rate)
print('转换后的金额:', out_money)
else:
print('不支持该种货币!')
5、简单函数的定义 lambda
in_money = eval(currency_str_value[:-3])
# 使用lambda定义函数
convert_currency2 = lambda x: x * exchange_rate
# 调用lambda函数
out_money = convert_currency2(in_money)