国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python2.7到3.x遷移指南

2020-02-22 23:05:07
字體:
來源:轉載
供稿:網(wǎng)友

目前,Python 科學棧中的所有主要項目都同時支持 Python 3.x 和 Python 2.7,不過,這種情況很快即將結束。去年 11 月,Numpy 團隊的一份聲明引發(fā)了數(shù)據(jù)科學社區(qū)的關注:這一科學計算庫即將放棄對于 Python 2.7 的支持,全面轉向 Python 3。Numpy 并不是唯一宣稱即將放棄 Python 舊版本支持的工具,pandas 與 Jupyter notebook 等很多產(chǎn)品也在即將放棄支持的名單之中。對于數(shù)據(jù)科學開發(fā)者而言,如何將已有項目從 Python 2 轉向 Python 3 成為了正在面臨的重大問題。來自莫斯科大學的 Alex Rogozhnikov 博士為我們整理了一份代碼遷移指南。

Python 3 功能簡介

Python 是機器學習和其他科學領域中的主流語言,我們通常需要使用它處理大量的數(shù)據(jù)。Python 兼容多種深度學習框架,且具備很多優(yōu)秀的工具來執(zhí)行數(shù)據(jù)預處理和可視化。

但是,Python 2 和 Python 3 長期共存于 Python 生態(tài)系統(tǒng)中,很多數(shù)據(jù)科學家仍然使用 Python 2。2019 年底,Numpy 等很多科學計算工具都將停止支持 Python 2,而 2018 年后 Numpy 的所有新功能版本將只支持 Python 3。

為了使 Python 2 向 Python 3 的轉換更加輕松,我收集了一些 Python 3 的功能,希望對大家有用。

使用 pathlib 更好地處理路徑

pathlib 是 Python 3 的默認模塊,幫助避免使用大量的 os.path.joins:

from pathlib import Pathdataset = 'wiki_images'datasets_root = Path('/path/to/datasets/') train_path = datasets_root / dataset / 'train'test_path = datasets_root / dataset / 'test'for image_path in train_path.iterdir(): with image_path.open() as f: # note, open is a method of Path object# do something with an image

Python 2 總是試圖使用字符串級聯(lián)(準確,但不好),現(xiàn)在有了 pathlib,代碼安全、準確、可讀性強。

此外,pathlib.Path 具備大量方法,這樣 Python 新用戶就不用每個方法都去搜索了:

p.exists()p.is_dir()p.parts()p.with_name('sibling.png') # only change the name, but keep the folderp.with_suffix('.jpg') # only change the extension, but keep the folder and the namep.chmod(mode)p.rmdir()

pathlib 會節(jié)約大量時間,詳見:

文檔:https://docs.python.org/3/library/pathlib.html;

參考信息:https://pymotw.com/3/pathlib/。

類型提示(Type hinting)成為語言的一部分

Python 不只是適合腳本的語言,現(xiàn)在的數(shù)據(jù)流程還包括大量步驟,每一步都包括不同的框架(有時也包括不同的邏輯)。

類型提示被引入 Python,以幫助處理越來越復雜的項目,使機器可以更好地進行代碼驗證。而之前需要不同的模塊使用自定義方式在文檔字符串中指定類型(注意:PyCharm 可以將舊的文檔字符串轉換成新的類型提示)。

下列代碼是一個簡單示例,可以處理不同類型的數(shù)據(jù)(這就是我們喜歡 Python 數(shù)據(jù)棧之處)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 雷波县| 内乡县| 皮山县| 深圳市| 桐城市| 天气| 化州市| 星座| 肥乡县| 石阡县| 新郑市| 东辽县| 东乌珠穆沁旗| 五家渠市| 鄂伦春自治旗| 包头市| 台南市| 鹤山市| 莒南县| 安泽县| 平山县| 玉山县| 化隆| 井冈山市| 保靖县| 交口县| 青田县| 泗阳县| 永康市| 建湖县| 讷河市| 太湖县| 安徽省| 普格县| 威宁| 竹山县| 常熟市| 交口县| 长沙县| 怀仁县| 江口县|