前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python实现汇率转换操作

Python实现汇率转换操作

作者头像
砸漏
修改2023-09-23 19:11:32
1.9K0
修改2023-09-23 19:11:32
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

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 利用api获取货币汇率

首先先到fixer.io网站,也就是提供货币汇率接口的网站,网址是:https://fixer.io/,看起来是这样的:

documentation里是接口使用的具体说明,为了使用这个接口首先得申请一个api access key,点击屏幕右上角GET FREE API KEY:

不同价格的api key有不同的功能,当然越贵的功能越好,在这里我们申请免费的API KEY,它提供的访问次数是一个月1000次,可以获得每小时的更新数据,支持的查询有限,比如说只能以欧元为base,同时它还可以查看历史的数据。点击GET FREE API KEY,需要填写个人信息:

示例如下:

有个比较坑的地方就是这个网页必须要有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利用api接口获取汇率的代码如下:

代码语言:javascript
复制
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()

结果:

获取的数据是json格式可以后期再自己处理,因为free key的base只能是欧元,所以可以多操作几次然后换算自己想要的货币的汇率,例子如下:

代码语言:javascript
复制
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实现汇率转换操作就是小编分享给大家的全部内容了,希望能给大家一个参考。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档