Python實(shí)現(xiàn)匯率轉(zhuǎn)換操作
1,分析計(jì)算部分;
2,將問(wèn)題分為輸入,處理以及輸出三部分;
3,設(shè)計(jì)算法進(jìn)行計(jì)算。
輸入:人民幣金額
處理:匯率計(jì)算:輸入/匯率
輸出。
打開(kāi)PyCharm–>File–>new Project–>選擇目錄或者新建,默認(rèn)interpreter是Anaconda–>create–>是否在當(dāng)前窗口創(chuàng)建還是在一個(gè)新的窗口創(chuàng)建,選新窗口
創(chuàng)建好以后,打開(kāi)目錄,發(fā)現(xiàn)只有個(gè).idea文件表示一些配置
新建文件,在目錄上面new–>Python file–>填寫(xiě)名字:currency_converter,默認(rèn)是.py文件–>OK
輸入提示:
input(‘請(qǐng)輸入人民幣金額:')
接收輸入值:
在前頭起個(gè)變量rmb_value_rec,賦值
rmb_value_rec = input(‘請(qǐng)輸入人民幣金額:')
print(‘rmb_value_rec:',rmb_value_rec)輸出看下是否接收正確(輸入的逗號(hào)為英文輸入法)
接受中含有文本怎么辦?
python有函數(shù)eval,可以只取出含有數(shù)字的部分
定義變量表示輸入的數(shù)字:rmb_vlaue
rmb_value = eval(rmb_value_rec )
匯率轉(zhuǎn)換:
當(dāng)前匯率是6.77,
定義一個(gè)變量表示當(dāng)前匯率
us_vs_rmb = 6.77
定義一個(gè)變量表示匯率轉(zhuǎn)換到的美元值:us_value
計(jì)算
us_value = rmb_value / us_vs_rmb
結(jié)果輸出:
print(‘美元金額是:',us_value,'$')
運(yùn)行:
右鍵,run一下

補(bǔ)充知識(shí):python 利用api獲取貨幣匯率
首先先到fixer.io網(wǎng)站,也就是提供貨幣匯率接口的網(wǎng)站,網(wǎng)址是:https://fixer.io/,看起來(lái)是這樣的:

documentation里是接口使用的具體說(shuō)明,為了使用這個(gè)接口首先得申請(qǐng)一個(gè)api access key,點(diǎn)擊屏幕右上角GET FREE API KEY:

不同價(jià)格的api key有不同的功能,當(dāng)然越貴的功能越好,在這里我們申請(qǐng)免費(fèi)的API KEY,它提供的訪問(wèn)次數(shù)是一個(gè)月1000次,可以獲得每小時(shí)的更新數(shù)據(jù),支持的查詢有限,比如說(shuō)只能以歐元為base,同時(shí)它還可以查看歷史的數(shù)據(jù)。點(diǎn)擊GET FREE API KEY,需要填寫(xiě)個(gè)人信息:

示例如下:

有個(gè)比較坑的地方就是這個(gè)網(wǎng)頁(yè)必須要有vpn才可以有人機(jī)驗(yàn)證,沒(méi)有vpn的話注冊(cè)不了access key,用于學(xué)習(xí)用途的話翻可以用賽風(fēng),如果僅是個(gè)人學(xué)習(xí)使用的話可以用我注冊(cè)的access key:dd44405658a1e71fd1d896a14a76f32d
使用方法具體可以看文檔,比如說(shuō)我想看當(dāng)前歐元和人民幣的匯率,那么可以讓base=EUR,symbols=CYN,在瀏覽器搜索欄上輸入
http://data.fixer.io/api/latest?access_key=dd44405658a1e71fd1d896a14a76f32d&base=EUR&symbols=CNY
其中access_key后面是你注冊(cè)的access key,結(jié)果如下:

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()
結(jié)果:

獲取的數(shù)據(jù)是json格式可以后期再自己處理,因?yàn)閒ree 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實(shí)現(xiàn)匯率轉(zhuǎn)換操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Win10環(huán)境中如何實(shí)現(xiàn)python2和python3并存
這篇文章主要介紹了Win10環(huán)境中如何實(shí)現(xiàn)python2和python3并存,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
Pycharm2020.1安裝無(wú)法啟動(dòng)問(wèn)題即設(shè)置中文插件的方法
這篇文章主要介紹了Pycharm2020.1安裝無(wú)法啟動(dòng)問(wèn)題即設(shè)置中文插件的操作方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-08-08
python 自動(dòng)刷新網(wǎng)頁(yè)的兩種方法
這篇文章主要介紹了python 自動(dòng)刷新網(wǎng)頁(yè)的兩種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
利用Python語(yǔ)言的grpc實(shí)現(xiàn)消息傳送詳解
gRPC是一個(gè)高性能、通用的開(kāi)源RPC框架,其由Google主要面向移動(dòng)應(yīng)用開(kāi)發(fā)并基于HTTP/2協(xié)議標(biāo)準(zhǔn)而設(shè)計(jì)。本文主要介紹了如何利用Python語(yǔ)言的grpc實(shí)現(xiàn)消息傳送,感興趣的可以了解一下2023-03-03
django1.11.1 models 數(shù)據(jù)庫(kù)同步方法
今天小編就為大家分享一篇django1.11.1 models 數(shù)據(jù)庫(kù)同步方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05
Python?Tkinter?Gui運(yùn)行不卡頓(解決多線程解決界面卡死問(wèn)題)
最近寫(xiě)的Python代碼不知為何,總是執(zhí)行到一半卡住不動(dòng),所以下面這篇文章主要給大家介紹了關(guān)于Python?Tkinter?Gui運(yùn)行不卡頓,解決多線程解決界面卡死問(wèn)題的相關(guān)資料,需要的朋友可以參考下2023-02-02

