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 相关文章推荐
使用BeautifulSoup爬虫程序获取百度搜索结果的标题和url示例
Jan 19 Python
python 3.6 tkinter+urllib+json实现火车车次信息查询功能
Dec 20 Python
python微信公众号开发简单流程
Mar 23 Python
numpy使用fromstring创建矩阵的实例
Jun 15 Python
Python中logging实例讲解
Jan 17 Python
python实现画五角星和螺旋线的示例
Jan 20 Python
Python/Django后端使用PIL Image生成头像缩略图
Apr 30 Python
python关闭占用端口方式
Dec 17 Python
python GUI框架pyqt5 对图片进行流式布局的方法(瀑布流flowlayout)
Mar 12 Python
利用jupyter网页版本进行python函数查询方式
Apr 14 Python
Keras - GPU ID 和显存占用设定步骤
Jun 22 Python
详解解Django 多对多表关系的三种创建方式
Aug 23 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冒泡排序算法代码详细解读
2011/07/17 PHP
深入解析PHP中foreach语句控制数组循环的用法
2015/11/30 PHP
详解PHP处理密码的几种方式
2016/11/30 PHP
PHP面向对象程序设计组合模式与装饰模式详解
2016/12/02 PHP
javascript window对象属性整理
2009/10/24 Javascript
jquery ui dialog ie8出现滚动条的解决方法
2010/12/06 Javascript
常见JS效果之图片减速度滚动实现代码
2011/12/08 Javascript
基于jquery自定义图片热区效果
2012/07/21 Javascript
addEventListener 的用法示例介绍
2014/05/07 Javascript
setInterval计时器不准的问题解决方法
2014/05/08 Javascript
alert出数组中的随即值代码
2014/09/25 Javascript
JS实现简易图片轮播效果的方法
2015/03/25 Javascript
javascript之Boolean类型对象
2016/06/07 Javascript
Vue.js绑定HTML class数组语法错误的原因分析
2016/10/19 Javascript
vue数据双向绑定原理解析(get & set)
2017/03/08 Javascript
JS优化与惰性载入函数实例分析
2017/04/06 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
Echarts实现多条折线可拖拽效果
2019/12/19 Javascript
在Uni中使用Vue的EventBus总线机制操作
2020/07/31 Javascript
[02:29]完美世界高校联赛上海赛区回顾
2015/12/15 DOTA
Python制作简单的网页爬虫
2015/11/22 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
基础的十进制按位运算总结与在Python中的计算示例
2016/06/28 Python
用tensorflow构建线性回归模型的示例代码
2018/03/05 Python
利用pandas进行大文件计数处理的方法
2018/07/25 Python
使用TensorFlow实现SVM
2018/09/06 Python
Python编写合并字典并实现敏感目录的小脚本
2019/02/26 Python
用vue.js组件模拟v-model指令实例方法
2019/07/05 Python
中专生自我鉴定
2013/12/17 职场文书
五型班组建设方案
2014/02/10 职场文书
爱国卫生月实施方案
2014/02/21 职场文书
任命书范本大全
2014/06/06 职场文书
企业宗旨标语
2014/06/10 职场文书
市委常委班子党的群众路线教育实践活动整改措施
2014/10/02 职场文书
情感电台广播稿
2015/08/18 职场文书
如何利用python和DOS获取wifi密码
2021/03/31 Python