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通过cookie模拟已登录状态的初步研究
Nov 09 Python
windows上安装Anaconda和python的教程详解
Mar 28 Python
使用Python对Access读写操作
Mar 30 Python
Python3 queue队列模块详细介绍
Jan 05 Python
Python之reload流程实例代码解析
Jan 29 Python
Python两个字典键同值相加的几种方法
Mar 05 Python
Python 通过打码平台实现验证码的实现
May 13 Python
PyQt4 treewidget 选择改变颜色,并设置可编辑的方法
Jun 17 Python
python sqlite的Row对象操作示例
Sep 11 Python
Python求平面内点到直线距离的实现
Jan 19 Python
python标准库os库的函数介绍
Feb 12 Python
Python爬虫模拟登陆哔哩哔哩(bilibili)并突破点选验证码功能
Dec 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文章内容分页并生成相应的htm静态页面代码
2010/06/07 PHP
php的chr和ord函数实现字符加减乘除运算实现代码
2011/12/05 PHP
使用PHP+AJAX让WordPress动态加载文章的教程
2015/12/11 PHP
Thinkphp5结合layer弹窗定制操作结果页面
2017/07/07 PHP
jQuery入门知识简介
2010/03/04 Javascript
JSON.stringify 语法实例讲解
2012/03/14 Javascript
javascript的创建多行字符串的7种方法
2014/04/29 Javascript
AngularJS入门教程之学习环境搭建
2014/12/06 Javascript
30个经典的jQuery代码开发技巧
2014/12/15 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
JQuery查找子元素find()和遍历集合each的方法总结
2017/03/07 Javascript
微信小程序 中wx.chooseAddress(OBJECT)实例详解
2017/03/31 Javascript
javascrit中undefined和null的区别详解
2019/04/07 Javascript
解决antd 下拉框 input [defaultValue] 的值的问题
2020/10/31 Javascript
[01:52]深扒TI7聊天轮盘语音出处7
2017/05/11 DOTA
python里大整数相乘相关技巧指南
2014/09/12 Python
在Python的Django框架中生成CSV文件的方法
2015/07/22 Python
PyQt 线程类 QThread使用详解
2017/07/16 Python
APIStar:一个专为Python3设计的API框架
2018/09/26 Python
利用Python检测URL状态
2019/07/31 Python
Django实现简单网页弹出警告代码
2019/11/15 Python
运行Python编写的程序方法实例
2020/10/21 Python
CSS3 简单又实用的5个属性
2010/03/04 HTML / CSS
推荐10个CSS3 制作的创意下拉菜单效果
2014/02/11 HTML / CSS
For Art’s Sake官网:手工制作的奢华眼镜
2018/12/15 全球购物
介绍一下linux的文件系统
2012/03/20 面试题
什么是抽象
2015/12/13 面试题
2014年高三毕业生自我评价
2014/01/11 职场文书
档案室主任岗位职责
2014/02/12 职场文书
安全技术说明书
2014/05/09 职场文书
创先争优活动承诺书
2014/08/30 职场文书
医德医风个人总结
2015/02/28 职场文书
Pytest中skip和skipif的具体使用方法
2021/06/30 Python
Nginx隐藏式跳转(浏览器URL跳转后保持不变)
2022/04/07 Servers
Win11 PC上的Outlook搜索错误怎么办?
2022/07/15 数码科技