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 相关文章推荐
selenium+python实现自动登录脚本
Apr 22 Python
python实现自主查询实时天气
Jun 22 Python
python opencv实现切变换 不裁减图片
Jul 26 Python
Python爬虫框架scrapy实现的文件下载功能示例
Aug 04 Python
python 基于TCP协议的套接字编程详解
Jun 29 Python
如何安装2019Pycharm最新版本(详细教程)
Sep 26 Python
python实现多进程按序号批量修改文件名的方法示例
Dec 30 Python
Python单链表原理与实现方法详解
Feb 22 Python
django 多数据库及分库实现方式
Apr 01 Python
Python使用socketServer包搭建简易服务器过程详解
Jun 12 Python
Python smtp邮件发送模块用法教程
Jun 15 Python
python使用opencv resize图像不进行插值的操作
Jul 05 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&mysql(一)
2006/10/09 PHP
PHP删除目录及目录下所有文件的方法详解
2013/06/06 PHP
解析htaccess伪静态的规则
2013/06/18 PHP
使用PHP实现阻止用户上传成人照片或者裸照
2014/12/25 PHP
变量在 PHP7 内部的实现(二)
2015/12/21 PHP
php中array_column函数简单实现方法
2016/07/11 PHP
PHP基于DOM创建xml文档的方法示例
2017/02/08 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
2017/08/17 PHP
用Greasemonkey 脚本收藏网站会员信息到本地
2009/10/26 Javascript
cnblogs csdn 代码运行框实现代码
2009/11/02 Javascript
JavaScript 原型继承
2011/12/26 Javascript
浅谈javascript中的作用域
2012/04/07 Javascript
JavaScript 数组详解
2013/10/10 Javascript
js类式继承的具体实现方法
2013/12/31 Javascript
使用JS+plupload直接批量上传图片到又拍云
2014/12/01 Javascript
JavaScript版的TwoQueues缓存模型
2014/12/29 Javascript
JavaScript图片轮播代码分享
2015/07/31 Javascript
IE8利用自带的setCapture和releaseCapture解决iframe的拖拽事件方法
2016/10/25 Javascript
微信小程序 Template详解及简单实例
2017/01/05 Javascript
javascript设计模式之策略模式学习笔记
2017/02/15 Javascript
JavaScript之Map和Set_动力节点Java学院整理
2017/06/29 Javascript
微信小程序动态增加按钮组件
2018/09/14 Javascript
微信小程序下拉框功能的实例代码
2018/11/06 Javascript
关于ligerui子页面关闭后,父页面刷新,重新加载的方法
2019/09/27 Javascript
[01:10]DOTA2亚洲邀请赛 征战号角响彻全场
2015/01/06 DOTA
Python中的rjust()方法使用详解
2015/05/19 Python
在Python中使用sort()方法进行排序的简单教程
2015/05/21 Python
tensorflow求导和梯度计算实例
2020/01/23 Python
python tkinter 设置窗口大小不可缩放实例
2020/03/04 Python
Django 解决开发自定义抛出异常的问题
2020/05/21 Python
pycharm设置默认的UTF-8编码模式的方法详解
2020/06/01 Python
美国顶级品牌男士大码服装店:DXL
2017/08/30 全球购物
大学军训感言
2014/01/10 职场文书
《台湾的蝴蝶谷》教学反思
2014/02/20 职场文书
超市开店计划书
2014/04/26 职场文书
支行行长竞聘演讲稿
2014/05/15 职场文书