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中使用列表生成式的教程
Apr 27 Python
python基础入门学习笔记(Python环境搭建)
Jan 13 Python
python中的编码知识整理汇总
Jan 26 Python
python调用系统ffmpeg实现视频截图、http发送
Mar 06 Python
python之从文件读取数据到list的实例讲解
Apr 19 Python
对Python 网络设备巡检脚本的实例讲解
Apr 22 Python
Python3.5内置模块之time与datetime模块用法实例分析
Apr 27 Python
我们为什么要减少Python中循环的使用
Jul 10 Python
python 实现汉诺塔游戏
Nov 28 Python
python 调用Google翻译接口的方法
Dec 09 Python
Python包argparse模块常用方法
Jun 04 Python
python树莓派通过队列实现进程交互的程序分析
Jul 04 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输出缓冲控制Output Control系列函数详解
2015/07/02 PHP
PHP入门教程之数组用法汇总(创建,删除,遍历,排序等)
2016/09/11 PHP
PHP实现的多维数组排序算法分析
2018/02/10 PHP
实现连缀调用的map方法(prototype)
2009/08/05 Javascript
用cssText批量修改样式
2009/08/29 Javascript
JavaScript 高效运行代码分析
2010/03/18 Javascript
浅析JS刷新框架中的其他页面 && JS刷新窗口方法汇总
2013/07/08 Javascript
JavaScript获取/更改文本框的值的实例代码
2013/08/02 Javascript
js中document.write使用过程中的一点疑问解答
2014/03/20 Javascript
js文件中直接alert()中文出来的是乱码的解决方法
2016/11/01 Javascript
VueAwesomeSwiper在VUE中的使用以及遇到的一些问题
2018/01/11 Javascript
JS的函数调用栈stack size的计算方法
2018/06/24 Javascript
JsonProperty 的使用方法详解
2019/10/11 Javascript
vue-element-admin 菜单标签失效的解决方式
2019/11/12 Javascript
微信小程序图片自适应实现解析
2020/01/21 Javascript
在vue中获取wangeditor的html和text的操作
2020/10/23 Javascript
Python subprocess库的使用详解
2018/10/26 Python
python微信好友数据分析详解
2018/11/19 Python
使用python将多个excel文件合并到同一个文件的方法
2019/07/09 Python
简单了解python PEP的一些知识
2019/07/13 Python
使用python实现画AR模型时序图
2019/11/20 Python
Spring实战之使用util:命名空间简化配置操作示例
2019/12/09 Python
flask框架蓝图和子域名配置详解
2020/01/25 Python
python实现提取COCO,VOC数据集中特定的类
2020/03/10 Python
Pycharm如何导入python文件及解决报错问题
2020/05/10 Python
Python通过getattr函数获取对象的属性值
2020/10/16 Python
使用Filters滤镜弥补CSS3的跨浏览器问题以及兼容低版本IE
2013/01/23 HTML / CSS
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
中国制造网:Made-in-China.com
2019/10/25 全球购物
JAVA中的关键字有什么特点
2014/03/07 面试题
党员干部承诺书范文
2014/03/25 职场文书
个人安全生产承诺书
2014/05/22 职场文书
2014年医院科室工作总结
2014/12/20 职场文书
考生诚信考试承诺书
2015/04/29 职场文书
MySQL索引知识的一些小妙招总结
2021/05/10 MySQL
CSS中使用grid布局实现一套模板多种布局
2022/07/15 HTML / CSS