Python實(shí)現(xiàn)匯率轉(zhuǎn)換操作
1,分析計(jì)算部分;
2,將問題分為輸入,處理以及輸出三部分;
3,設(shè)計(jì)算法進(jìn)行計(jì)算。
輸入:人民幣金額
處理:匯率計(jì)算:輸入/匯率
輸出。
打開PyCharm?>File?>new Project?>選擇目錄或者新建,默認(rèn)interpreter是Anaconda?>create?>是否在當(dāng)前窗口創(chuàng)建還是在一個(gè)新的窗口創(chuàng)建,選新窗口
創(chuàng)建好以后,打開目錄,發(fā)現(xiàn)只有個(gè).idea文件表示一些配置
新建文件,在目錄上面new?>Python file?>填寫名字:currency_converter,默認(rèn)是.py文件?>OK
輸入提示:
input(‘請輸入人民幣金額:’)
接收輸入值:
在前頭起個(gè)變量rmb_value_rec,賦值
rmb_value_rec = input(‘請輸入人民幣金額:’)print(‘rmb_value_rec:’,rmb_value_rec)輸出看下是否接收正確(輸入的逗號為英文輸入法)
接受中含有文本怎么辦?
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ǔ)充知識:python 利用api獲取貨幣匯率
首先先到fixer.io網(wǎng)站,也就是提供貨幣匯率接口的網(wǎng)站,網(wǎng)址是:https://fixer.io/,看起來是這樣的:
documentation里是接口使用的具體說明,為了使用這個(gè)接口首先得申請一個(gè)api access key,點(diǎn)擊屏幕右上角GET FREE API KEY:
不同價(jià)格的api key有不同的功能,當(dāng)然越貴的功能越好,在這里我們申請免費(fèi)的API KEY,它提供的訪問次數(shù)是一個(gè)月1000次,可以獲得每小時(shí)的更新數(shù)據(jù),支持的查詢有限,比如說只能以歐元為base,同時(shí)它還可以查看歷史的數(shù)據(jù)。點(diǎn)擊GET FREE API KEY,需要填寫個(gè)人信息:
示例如下:
有個(gè)比較坑的地方就是這個(gè)網(wǎng)頁必須要有vpn才可以有人機(jī)驗(yàn)證,沒有vpn的話注冊不了access key,用于學(xué)習(xí)用途的話翻可以用賽風(fēng),如果僅是個(gè)人學(xué)習(xí)使用的話可以用我注冊的access key:dd44405658a1e71fd1d896a14a76f32d
使用方法具體可以看文檔,比如說我想看當(dāng)前歐元和人民幣的匯率,那么可以讓base=EUR,symbols=CYN,在瀏覽器搜索欄上輸入
http://data.fixer.io/api/latest?access_key=dd44405658a1e71fd1d896a14a76f32d&base=EUR&symbols=CNY
其中access_key后面是你注冊的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)換操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 將properties文件的配置設(shè)置為整個(gè)Web應(yīng)用的全局變量實(shí)現(xiàn)方法2. python中pandas.read_csv()函數(shù)的深入講解3. python爬蟲利用代理池更換IP的方法步驟4. SpringBoot集成SSM、Dubbo、Redis、JSP的案例小結(jié)及思路講解5. JS算法題解旋轉(zhuǎn)數(shù)組方法示例6. Python語言規(guī)范之Pylint的詳細(xì)用法7. springboot用controller跳轉(zhuǎn)html頁面的實(shí)現(xiàn)8. VMware如何進(jìn)入BIOS方法9. PHP設(shè)計(jì)模式之迭代器模式Iterator實(shí)例分析【對象行為型】10. WMLScript腳本程序設(shè)計(jì)第1/9頁
