Python实现汇率转换操作


Posted in Python onMay 03, 2020

1,分析计算部分;

2,将问题分为输入,处理以及输出三部分;

3,设计算法进行计算。

输入:人民币金额

处理:汇率计算:输入/汇率

输出。

打开PyCharm?>File?>new Project?>选择目录或者新建,默认interpreter是Anaconda?>create?>是否在当前窗口创建还是在一个新的窗口创建,选新窗口

创建好以后,打开目录,发现只有个.idea文件表示一些配置

新建文件,在目录上面new?>Python file?>填写名字:currency_converter,默认是.py文件?>OK

输入提示:

input(‘请输入人民币金额:')

接收输入值:

在前头起个变量rmb_value_rec,赋值

rmb_value_rec = input(‘请输入人民币金额:')
print(‘rmb_value_rec:',rmb_value_rec)输出看下是否接收正确(输入的逗号为英文输入法)

接受中含有文本怎么办?

python有函数eval,可以只取出含有数字的部分

定义变量表示输入的数字:rmb_vlaue

rmb_value = eval(rmb_value_rec )

汇率转换:

当前汇率是6.77,

定义一个变量表示当前汇率

us_vs_rmb = 6.77

定义一个变量表示汇率转换到的美元值:us_value

计算

us_value = rmb_value / us_vs_rmb

结果输出:

print(‘美元金额是:',us_value,'$')

运行:

右键,run一下

Python实现汇率转换操作

补充知识:python 利用api获取货币汇率

首先先到fixer.io网站,也就是提供货币汇率接口的网站,网址是:https://fixer.io/,看起来是这样的:

Python实现汇率转换操作

documentation里是接口使用的具体说明,为了使用这个接口首先得申请一个api access key,点击屏幕右上角GET FREE API KEY:

Python实现汇率转换操作

不同价格的api key有不同的功能,当然越贵的功能越好,在这里我们申请免费的API KEY,它提供的访问次数是一个月1000次,可以获得每小时的更新数据,支持的查询有限,比如说只能以欧元为base,同时它还可以查看历史的数据。点击GET FREE API KEY,需要填写个人信息:

Python实现汇率转换操作

示例如下:

Python实现汇率转换操作

有个比较坑的地方就是这个网页必须要有vpn才可以有人机验证,没有vpn的话注册不了access key,用于学习用途的话翻可以用赛风,如果仅是个人学习使用的话可以用我注册的access key:dd44405658a1e71fd1d896a14a76f32d

使用方法具体可以看文档,比如说我想看当前欧元和人民币的汇率,那么可以让base=EUR,symbols=CYN,在浏览器搜索栏上输入

http://data.fixer.io/api/latest?access_key=dd44405658a1e71fd1d896a14a76f32d&base=EUR&symbols=CNY

其中access_key后面是你注册的access key,结果如下:

Python实现汇率转换操作

python利用api接口获取汇率的代码如下:

import requests
 
def main():
 res = requests.get("http://data.fixer.io/api/latest?access_key=dd44405658a1e71fd1d896a14a76f32d&base=EUR&symbols=CNY")
 if res.status_code != 200:
 raise Exception("ERROR: API rquest unsuccessful.")
 data = res.json()
 print(data)
 
if __name__ == "__main__":
 main()

结果:

Python实现汇率转换操作

获取的数据是json格式可以后期再自己处理,因为free key的base只能是欧元,所以可以多操作几次然后换算自己想要的货币的汇率,例子如下:

import requests
 
def main():
 base = input("First Currency: ")
 other = input("Second Currency: ")
 access_key = "dd44405658a1e71fd1d896a14a76f32d"
 res_b = requests.get("http://data.fixer.io/api/latest",
   params={"access_key": access_key, "base": "EUR", "symbols": base})
 res_o = requests.get("http://data.fixer.io/api/latest",
   params={"access_key": access_key, "base": "EUR", "symbols": other})
 if res_b.status_code != 200 or res_o.status_code != 200:
 raise Exception("ERROR: API request unsuccessful.")
 data_b = res_b.json()
 data_o = res_o.json()
 rate_b = data_b["rates"][base]
 rate_o = data_o["rates"][other]
 rate = round((rate_o / rate_b), 2)
 print(f"1 {base} is equal to {rate} {other}") 
 
if __name__ == "__main__":
 main()

以上这篇Python实现汇率转换操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django框架中方法的访问和查找
Jul 15 Python
python在ubuntu中的几种安装方法(小结)
Dec 08 Python
python决策树之CART分类回归树详解
Dec 20 Python
对pandas中to_dict的用法详解
Jun 05 Python
基于python3实现socket文件传输和校验
Jul 28 Python
在python2.7中用numpy.reshape 对图像进行切割的方法
Dec 05 Python
python合并已经存在的sheet数据到新sheet的方法
Dec 11 Python
Python 微信之获取好友昵称并制作wordcloud的实例
Feb 21 Python
解决Pyinstaller 打包exe文件 取消dos窗口(黑框框)的问题
Jun 21 Python
详解Python对JSON中的特殊类型进行Encoder
Jul 15 Python
python对 MySQL 数据库进行增删改查的脚本
Oct 22 Python
基于Python的图像阈值化分割(迭代法)
Nov 20 Python
Python定时从Mysql提取数据存入Redis的实现
May 03 #Python
python函数调用,循环,列表复制实例
May 03 #Python
python轮询机制控制led实例
May 03 #Python
python 轮询执行某函数的2种方式
May 03 #Python
在Sublime Editor中配置Python环境的详细教程
May 03 #Python
Python 将 QQ 好友头像生成祝福语的实现代码
May 03 #Python
Python使用pdb调试代码的技巧
May 03 #Python
You might like
Codeigniter框架实现获取分页数据和总条数的方法
2014/12/05 PHP
php自定义加密与解密程序实例
2014/12/31 PHP
php+mysqli实现将数据库中一张表信息打印到表格里的方法
2015/01/28 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
2017/12/26 PHP
JavaScript高级程序设计(第3版)学习笔记5 js语句
2012/10/11 Javascript
js导入导出excel(实例代码)
2013/11/25 Javascript
jquery垂直公告滚动实现代码
2013/12/08 Javascript
使用js显示当前时间示例
2014/03/02 Javascript
javascript检查浏览器是否支持flash的实现代码
2014/08/14 Javascript
js实现拖拽效果(构造函数)
2015/12/14 Javascript
javascript绘制漂亮的心型线效果完整实例
2016/02/02 Javascript
Select下拉框模糊查询功能实现代码
2016/07/22 Javascript
AngularJS入门教程之表格实例详解
2016/07/27 Javascript
JS多文件上传的实例代码
2017/01/11 Javascript
轻松理解Javascript变量的相关问题
2017/01/20 Javascript
解决Vue 浏览器后退无法触发beforeRouteLeave的问题
2017/12/24 Javascript
vue实现组件之间传值功能示例
2018/07/13 Javascript
Vue自定义弹窗指令的实现代码
2018/08/13 Javascript
vue实现自定义日期组件功能的实例代码
2018/11/06 Javascript
跟老齐学Python之总结参数的传递
2014/10/10 Python
python列表生成式与列表生成器的使用
2018/02/23 Python
树莓派动作捕捉抓拍存储图像脚本
2019/06/22 Python
sklearn-SVC实现与类参数详解
2019/12/10 Python
Python动态声明变量赋值代码实例
2019/12/30 Python
tensorflow 初始化未初始化的变量实例
2020/02/06 Python
matplotlib阶梯图的实现(step())
2021/03/02 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
2021/03/03 Python
Currentbody美国/加拿大:美容仪专家
2020/03/09 全球购物
宿舍使用违章电器检讨书
2014/01/12 职场文书
职称评定自我鉴定
2014/03/18 职场文书
爱与责任演讲稿
2014/05/20 职场文书
领导班子四风对照检查材料
2014/09/23 职场文书
2014企业年终工作总结
2014/12/23 职场文书
高校自主招生自荐信2015
2015/03/04 职场文书
CSS 还能这样玩?奇思妙想渐变的艺术
2021/04/27 HTML / CSS
《堡垒之夜》联动《刺客信条》 4月7日正式上线
2022/04/06 其他游戏