【菜鸟学Python】案例一:汇率换算
汇率换算V1.0
案例描述:
设计一个汇率换算器程序,其功能是将外币换算成人民币,或者相反
案例分析:
分析问题:分析问题的计算部分;
确定问题:将问题划分为输入、处理及输出部分;
设计算法:计算部分的核心(输出 = 输入 / 汇率);
上机实验:
"""
作者:李舵
功能:汇率兑换
版本:1.0
日期:2019/4/8
""" # 汇率
USD_VS_RMB = 6.77 # 人民币的输入
rmb_str_value = input('请输入人民币(CNY)金额:') # 将字符串转换为数字
rmb_value = eval(rmb_str_value) # 汇率计算
usd_value = rmb_value / USD_VS_RMB # 输出结果
print('美元(USD)金额是:', usd_value)
补充说明:
1、#用于单行注释
2、以三个单引号开始三个单引号结束用于多行注释
#单行注释说明 '''
用于多行注释说明
'''
或
"""
用于多行注释说明
"""
V2.0新增功能:
根据输入判断是人民币还是美元,进行相应的转换计算
案例分析:
输入:带单位的货币金额
上机实验:
"""
作者:李舵
功能:汇率兑换
版本:2.0
日期:2019/4/8
新增功能:根据输入判断是人民币还是美元,进行相应的转换计算
""" # 汇率
USD_VS_RMB = 6.77 # 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额:') # 获取货币单位
unit = currency_str_value[-3:] if unit == 'CNY':
# 输入的是人民币
rmb_str_value = currency_str_value[:-3]
# 将字符串转换为数字
rmb_value = eval(rmb_str_value)
# 汇率计算
usd_value = rmb_value / USD_VS_RMB # 输出结果
print('美元(USD)金额是:', usd_value) elif unit == 'USD':
# 输入的是美元
usd_str_value = currency_str_value[:-3]
# 将字符串转换为数字
usd_value = eval(usd_str_value)
# 汇率计算
rmb_value = usd_value * USD_VS_RMB # 输出结果
print('人民币(CNY)金额是:', rmb_value) else:
# 其他情况
print('目前版本尚不支持该种货币!')
补充说明:
Python语言的基本语法
缩进:
1个tab键或者4个空格
表示代码的层次关系
是Python语言中表示程序框架的唯一手段
常量与变量
常量:程序执行过程中,值不发生改变的元素,程序中多次使用的值可作为常量便于改进及维护
变量:程序过长中,值发生改变或者需要改变的元素
命名规则
命名:为程序元素关联一个名称,要保证唯一性
规则:大小写字母,数字,下划线,不能以数字开头,大小写敏感,不能和保留字相同
#Python保留字查看方式 import keyword
print(keyword.kwlist)
表达式:程序中产生新数据值或执行操作的一行代码
输入:
input() #获得用户的输入信息并以字符串的形式保存
输出:
print() #向屏幕输入信息
字符串索引:
正向索引(从左至右,从0开始):
spam = 'PYTHON'
spam[2] # 获取变量为spam的第三个元素即'T'
逆向索引(从右至左,从-1开始)
spam = 'PYTHON'
spam[-3] # 获取变量为spam的倒数第三个元素即'H'
区间索引([a:b]),从位置a到位置b部分的元素,不包括位置b的元素
spam = 'PYTHON'
spam[0:3] #获取第一元素至第三个元素,即'PYT'
spam[:3] #从0开始,0可以省略
spam[-3:-1] #从倒数第三个元素到倒数第一个元素
spam[-3:] #从倒数第三个元素到倒数第一个元素取到末尾可以省略不写
分支语句if else
分支语句
控制程序的语句
根据判断条件选择程序的执行路径
使用方法:
if <条件1>:
<语句块1>
elif <条件2>:
<语句块2>
…
else:
<语句块N>
V3.0增加功能:
案例描述:
程序可以一直运行,知道用户选择退出
案例分析:
使用循环语句while
上机实验:
"""
作者:李舵
功能:汇率兑换
版本:3.0
日期:2019/4/8
2.0 新增功能:根据输入判断是人民币还是美元,进行相应的转换计算
3.0 增加功能:程序可以一直运行,直到用户选择退出
""" # 汇率
USD_VS_RMB = 6.77 # 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额(退出程序请输入Q):') i = 0 while currency_str_value != 'Q':
i = i + 1
# print('循环次数', i)
# 获取货币单位
unit = currency_str_value[-3:] if unit == 'CNY':
# 输入的是人民币
rmb_str_value = currency_str_value[:-3]
# 将字符串转换为数字
rmb_value = eval(rmb_str_value)
# 汇率计算
usd_value = rmb_value / USD_VS_RMB # 输出结果
print('美元(USD)金额是:', usd_value) elif unit == 'USD':
# 输入的是美元
usd_str_value = currency_str_value[:-3]
# 将字符串转换为数字
usd_value = eval(usd_str_value)
# 汇率计算
rmb_value = usd_value * USD_VS_RMB # 输出结果
print('人民币(CNY)金额是:', rmb_value) else:
# 其他情况
print('目前版本尚不支持该种货币!') print('************************************************')
# 带单位的货币输入
currency_str_value = input('请输入带单位的货币金额(退出程序请输入Q):') print('程序已退出!')
补充说明:
循环语句
控制程序的语句
根据判断条件确定一段程序是否再次执行一次或者多次
使用方法:
while (<条件>):
<语句块1>
<语句块2>
当条件为真(True)时,执行语句块1;为假(False)时,退出循环
【菜鸟学Python】案例一:汇率换算的更多相关文章
- 菜鸟学python之大数据的初认识
这次作业的要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2639 1.这些分析所采用数据来源是什么? 国家数据库:中国铁路 ...
- 菜鸟学python之程序初体验
作业来源:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2684 1.字符串操作: 解析身份证号:生日.性别.出生地等. def id ...
- 【Python 11】汇率兑换4.0(函数)
1.案例描述 设计一个汇率换算程序,其功能是将美元换算成人民币,或者相反. 2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算 3.0增加功能:程序可以一直运行,知道用户选择退出 4.0 ...
- 【Python 08】汇率兑换2.0-1(字符串索引)
1.案例描述 设计一个汇率换算程序,其功能是将人民币转换为美元,或者美元转换为人民币. 增加功能:根据输入判断是人民币还是美元,进行相应的转换计算. 2.案例分析 3.字符串 两个双引号或单引号括起 ...
- 【Python五篇慢慢弹】快速上手学python
快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...
- [java] 汇率换算器实现-插曲1-正则表达式(1)
[java] 汇率换算器实现-插曲1-正则表达式(1) // */ // ]]> // */ // ]]> [java] 汇率换算器实现-插曲1-正则表达式(1) Table of C ...
- 【Python 12】汇率兑换5.0(Lambda函数)
1.案例描述 设计一个汇率换算程序,其功能是将美元换算成人民币,或者相反. 2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算 3.0增加功能:程序可以一直运行,知道用户选择退出 4. ...
- 【Python 10】汇率兑换3.0(while循环)
1.案例描述 设计一个汇率换算程序,其功能是将美元换算成人民币,或者相反. 2.0增加功能:根据输入判断是人民币还是美元,进行相应的转换计算 3.0增加功能:程序可以一直运行,知道用户选择退出 2.案 ...
- 【Python 06】汇率兑换1.0-1(IPO与字符串转数字)
1.案例描述 设计一个汇率换算器程序,功能是将外币换算成人民币. 2.案例分析 将问题划分为输入.处理及输出三部分(IPO) 3.上机实验 rmb_str_value = input('请输入人民币( ...
随机推荐
- 饮冰三年-人工智能-Python-19 Python网络编程
Socket:套接字.作用:我们只需要安照socket的规定去编程,就不需要深入理解tcp/udp协议也可以实现 1:TCP协议 1.1 客户端服务端循环收发消息 # 1:引入stock模块(导包) ...
- pip错误-failed to create process/fatal error in launcher
电脑同时装了python2和python3,并且都配置了环境变量 将python2的python.exe改成python2.exe,python3的python.exe没有改(主要用python2时则 ...
- jackson对日期的处理(序列化与反序列化)
https://blog.csdn.net/cover1231988/article/details/76021478
- thinkphp5调用阿里大鱼短信
:在Controller.php public function send() { if (request()->isPost()) { $phone = input('post.phone/s ...
- web服务-3、epoll高效率实现并发服务器
知识点: 之前写的四种方法实现并发服务效率都还是低,早期的服务器采用的是select和poll方式,select这种方式的特点是轮询所有套接字去一个个看有没有事件发生,但是装套接字的列表长度是有限制的 ...
- 转载:使用Tornado+Redis维护ADSL拨号服务器代理池
我们尝试维护过一个免费的代理池,但是代理池效果用过就知道了,毕竟里面有大量免费代理,虽然这些代理是可用的,但是既然我们能刷到这个免费代理,别人也能呀,所以就导致这个代理同时被很多人使用来抓取网站,所以 ...
- Visual GC提示"不受此JVM支持“解决方案(配置jstatd)
Visual GC提示"不受此JVM支持“,如果想使用这个插件,就需要配置jstatd连接方式,下面来看jstatd的配置: 1.配置安全策略文件路径$JAVA_HOME/jre/lib/s ...
- FZU 2285 迷宫寻宝
思路: bfs求最短路径. #include<stdio.h> #include<iostream> #include<queue> #include<cst ...
- 将ActiveX打包成CAB发布的注意事项
1.在实现ActiveX组件时,注意VS必须使用管理员身份运行,否则会提示不成功 2.在解决方案中添加一个安装项目 a.在View中点击文件系统,添加对ActiveX项目的输出 b.注册表HKEY_C ...
- 更新node和npm到最新版本
卸载 1.首先卸载nodejs,打开控制面板,然后找到程序卸载: 2.找到npm目录和npmcache 目录,直接删掉(一般情况下会在C:\Users\Caffrey\AppData\Roaming\ ...