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 相关文章推荐
python中实现指定时间调用函数示例代码
Sep 08 Python
详谈python3中用for循环删除列表中元素的坑
Apr 19 Python
异步任务队列Celery在Django中的使用方法
Jun 07 Python
pandas 转换成行列表进行读取与Nan处理的方法
Oct 30 Python
python实现电子产品商店
Feb 26 Python
使用Python实现企业微信的自动打卡功能
Apr 30 Python
python批量读取文件名并写入txt文件中
Sep 05 Python
python 列表推导式使用详解
Aug 29 Python
实现Python与STM32通信方式
Dec 18 Python
Pytorch: 自定义网络层实例
Jan 07 Python
Python函数基本使用原理详解
Mar 19 Python
Python-OpenCV教程之图像的位运算详解
Jun 21 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
PHP分页显示制作详细讲解
2006/12/05 PHP
小文件php+SQLite存储方案
2010/09/04 PHP
php错误级别的设置方法
2013/06/17 PHP
php 中phar包的使用教程详解
2018/10/26 PHP
两个DIV等高的JS的实现代码
2007/12/23 Javascript
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失
2009/06/04 Javascript
文本框获得焦点和失去焦点的判断代码
2012/03/18 Javascript
JavaScript字符串插入、删除、替换函数使用示例
2013/07/25 Javascript
JS 实现列表与多选框选择附预览动画
2014/10/29 Javascript
简单介绍JavaScript的变量和数据类型
2015/06/03 Javascript
js中判断变量类型函数typeof的用法总结
2016/08/09 Javascript
AngularJS通过$sce输出html的方法
2016/09/22 Javascript
jQuery EasyUI右键菜单实现关闭标签/选项卡
2016/10/10 Javascript
javascript ES6中箭头函数注意细节小结
2017/02/17 Javascript
js实现1,2,3,5数字按照概率生成
2017/09/12 Javascript
微信小程序实现点击文字页面跳转功能【附源码下载】
2017/12/12 Javascript
React props和state属性的具体使用方法
2018/04/12 Javascript
vue slots 组件的组合/分发实例
2018/09/06 Javascript
JS使用canvas中的measureText方法测量字体宽度示例
2019/02/02 Javascript
[50:27]OG vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.26
2018/08/30 DOTA
PyCharm在新窗口打开项目的方法
2019/01/17 Python
详解python中自定义超时异常的几种方法
2019/07/29 Python
python数值基础知识浅析
2019/11/19 Python
python Plotly绘图工具的简单使用
2020/03/03 Python
Python 炫技操作之合并字典的七种方法
2020/04/10 Python
Django后端按照日期查询的方法教程
2021/02/28 Python
CSS3绘制圆角矩形的简单示例
2015/09/28 HTML / CSS
canvas之自定义头像功能实现代码示例
2017/09/29 HTML / CSS
优质有机椰子产品:Dr. Goerg
2019/09/24 全球购物
《充气雨衣》教学反思
2014/04/07 职场文书
社区灵活就业证明
2014/11/03 职场文书
幼儿园中班教师个人工作总结
2015/02/06 职场文书
行为习惯主题班会
2015/08/14 职场文书
五年级语文教学反思
2016/03/03 职场文书
nginx proxy_cache 缓存配置详解
2021/03/31 Servers
Python Matplotlib绘制条形图的全过程
2021/10/24 Python