自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python雖好,但請不要盲目將它用于每一個項(xiàng)目!

譯文
開發(fā) 后端
最近我在Reddit上討論了為什么有人會選擇使用Python而不是其他編程語言。討論很激烈,于是我決定寫一篇文章。

[[332649]]

【51CTO.com快譯】

最近我在Reddit上討論了為什么有人會選擇使用Python而不是其他編程語言。討論很激烈,于是我決定寫一篇文章。

首先,不妨講講我對Python的看法。這是我喜歡的一種編程語言,可以用于眾多應(yīng)用,不過我同意所有語言都有其缺點(diǎn)。我的確認(rèn)為Python是適合專業(yè)人員使用的一種優(yōu)秀語言,但也適合初學(xué)者探索迷人的編程世界。

話雖如此,我會在每個項(xiàng)目中使用Python嗎?可能不會。但是Python在一些方面很擅長,我想重點(diǎn)介紹這方面并解釋原因。

  • API開發(fā)
  • 數(shù)據(jù)科學(xué)/人工智能
  • 腳本編寫

API開發(fā)

有一些出色的API開發(fā)框架可與Python結(jié)合使用,其中兩個是開發(fā)社區(qū)最喜歡的框架:Django和Flask。

圍繞API開發(fā)的討論立即進(jìn)入了Web框架的方向。為什么?這么說吧,如果你想致力于為API編寫代碼,就不該編寫自己的Web服務(wù)器或框架。

一些人也主張將Python用于Web開發(fā),不過我不喜歡將那些框架用于前端,我更喜歡使用React、VueJS或Ember構(gòu)建前端。

如果你開始使用Python開發(fā)API,很可能最終會使用Django或Flask。所以你可能會問:我該使用哪一個?

Django VS Flask

這兩種框架都很棒,而且適用于大多數(shù)情況。然而,它們遵循不同的理念。一些人更喜歡其中一種,兩邊都有充分的理由。由于這兩種框架本質(zhì)上大不相同,因此我僅介紹兩者的大體區(qū)別,不過你應(yīng)該詳細(xì)了解,才能確定哪種框架最適合你和你的項(xiàng)目。

理念:

  • Flask是一種簡約的框架。它提供了簡單性、靈活性和細(xì)粒度控制。它是非固執(zhí)己見的(你可以用它來做你想做的任何事情)。
  • 相反,Django是一個綜合性框架。你可以直接為應(yīng)用程序獲得庫、管理面板、數(shù)據(jù)庫界面、ORM甚至可靠的目錄結(jié)構(gòu)。

如果你想了解更多的相關(guān)內(nèi)容,請參閱此文:https://testdriven.io/blog/django-vs-flask/

數(shù)據(jù)科學(xué)/人工智能

無論何時想處理數(shù)據(jù)(比如數(shù)據(jù)抓取、數(shù)據(jù)分析、可視化、機(jī)器學(xué)習(xí)或AI),Python都是最好的朋友。這每一項(xiàng)任務(wù)都有許多重要的庫,它們是出色的庫,在研究環(huán)境和生產(chǎn)環(huán)境中使用率很高。

我不會詳細(xì)介紹這些庫,但想提及幾個庫:Pandas、Numpy、Matplotlib、Seaborn、Tensorflow、Pytorch、scikit-learn、Keras、NLTK和OpenCV。

由于這些庫,你可以構(gòu)建涉及幾乎任何數(shù)據(jù)科學(xué)或AI主題的生產(chǎn)就緒的項(xiàng)目。雖然將Python用于其中一些應(yīng)用存在一些缺點(diǎn)(比如性能),但在許多情況下,Python會是不錯的選擇。

我們在談?wù)撃囊环N項(xiàng)目?

通常,Python在數(shù)據(jù)科學(xué)和AI有許多應(yīng)用。我在這里提及使用Python的幾個常見項(xiàng)目:

  • 時間序列分析
  • 銷售預(yù)測
  • 語言處理
  • 情緒分析
  • 推薦系統(tǒng)(比如音樂和視頻等)
  • 分類
  • 計(jì)算機(jī)視覺
  • 自動駕駛汽車

腳本

腳本通常指旨在自動執(zhí)行簡單任務(wù)的小程序(通常通過命令行來執(zhí)行)。

下面舉幾個例子表明我自己編寫的腳本,這些腳本使我的日常工作流程實(shí)現(xiàn)自動化:

  • 我的博客:我使用Evernote收集在網(wǎng)上看到的所有內(nèi)容,還撰寫帖子。但是需要發(fā)布時,我記下那些筆記并將其作為草稿上傳到我的博客中。這個過程在Python上自動進(jìn)行:每當(dāng)我將筆記標(biāo)記為“準(zhǔn)備發(fā)布”,我會運(yùn)行Python腳本:將筆記、格式和草稿拷貝到我的博客系統(tǒng)中。當(dāng)然,實(shí)際發(fā)布之前我總需要進(jìn)行一番手動修改(主要是由于Evernote奇怪的HTML輸出)。
  • 備份:我喜歡在云端備份資料,但我也在外部硬盤中留一份副本。我通常加密放到云端的所有內(nèi)容(Evernote除外,它不允許我這么做)。但當(dāng)我將備份內(nèi)容放到硬盤時​​,會使用硬盤加密,我不想對其進(jìn)行雙重加密。當(dāng)我想把數(shù)據(jù)備份到硬盤時,會運(yùn)行一個python腳本,該腳本解密數(shù)據(jù),然后將數(shù)據(jù)移到硬盤。

結(jié)論

Python是一種用途很廣泛的編程語言,由于其社區(qū)和庫,你幾乎可以用它來做想做的任何事情,不過有時你不該使用它。沒有哪種語言一應(yīng)俱全:它們都有優(yōu)缺點(diǎn),Python也不例外。

話雖如此,我確實(shí)認(rèn)為Python很棒;如果你很好奇,可以用它構(gòu)建從游戲到嵌入式系統(tǒng)的各種應(yīng)用。當(dāng)然,那些可能不是生產(chǎn)就緒的項(xiàng)目。

原文標(biāo)題:Python is great, but stop using it for every damn project

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

 

責(zé)任編輯:龐桂玉 來源: 51CTO
相關(guān)推薦

2024-03-22 16:13:42

LLMRAGXGBoost

2022-12-12 08:23:34

Java 5ordrialname

2010-09-09 09:25:59

2024-11-21 08:00:00

矢量數(shù)據(jù)庫人工智能

2019-09-27 12:14:15

低代碼程序平衡

2022-01-22 00:14:05

Windows 11微軟修復(fù)

2011-12-16 20:00:57

黑莓

2015-08-25 09:00:48

創(chuàng)業(yè)失敗者創(chuàng)業(yè)活動

2020-06-02 16:38:24

華為

2010-03-12 16:12:49

2016-03-24 10:25:25

敏捷開發(fā)競爭

2025-02-26 08:03:17

SpringJPAMyBatis

2025-01-03 08:14:33

2010-12-06 14:53:26

博雅英杰

2015-10-10 11:09:48

NFVNFVI網(wǎng)絡(luò)虛擬化

2016-01-13 15:14:06

云計(jì)算OpenStack

2021-09-27 10:07:39

Python 開發(fā)編程語言

2013-07-09 10:44:05

PowerShell

2010-01-06 13:51:06

2021-12-13 16:19:36

人工智能機(jī)器學(xué)習(xí)技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號