1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        針對Python開發(fā)人員的10個“瘋狂”的項目構(gòu)想

        共 6429字,需瀏覽 13分鐘

         ·

        2020-10-25 02:53

        者 | Juan Cruz Martinez
        譯者 | 劉雅夢
        策劃 & 編輯 | 劉燕
        這些項目構(gòu)想很有可能會讓你對這門神奇的語言產(chǎn)生興趣。最棒的是,你可以通過這些有趣但也具有挑戰(zhàn)性的項目來增強 Python 編程技能。

        本文最初發(fā)表于 Towards Data Science 博客,由 InfoQ 中文站翻譯并分享。

        你知道 Python 是被稱為 全能編程語言 的嗎?

        是的,它確實是,雖然不應(yīng)該在每個項目中都使用它。

        你可以使用它來創(chuàng)建桌面應(yīng)用程序、游戲、移動應(yīng)用程序、網(wǎng)站和系統(tǒng)軟件。它甚至是最適合用于實現(xiàn) 人工智能機器學(xué)習(xí) 算法的語言。

        因此,在過去的幾周里,我為 Python 開發(fā)人員收集了一些獨特的項目構(gòu)想。這些項目構(gòu)想很有可能會讓你對這門神奇的語言產(chǎn)生興趣。最棒的是,你可以通過這些有趣但也具有挑戰(zhàn)性的項目來增強你的 Python 編程技能。

        讓我們來一一看下。

        1、使用語音命令創(chuàng)建軟件 GUI

        交互示例——原圖來自 [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 由 [Headway](https://unsplash.com/@headwayio?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 上傳,本圖由作者編輯過

        如今,桌面應(yīng)用程序開發(fā)領(lǐng)域已經(jīng)取得了巨大進步。你能看到許多拖拽式 GUI 構(gòu)建器和語音識別庫。那么,為什么不能將它們結(jié)合在一起,通過與計算機對話來創(chuàng)建一個用戶界面呢?

        這是一個全新的概念,經(jīng)過一番研究,我發(fā)現(xiàn)還沒有人嘗試這樣做。因此,它可能比下面提到的那些更具挑戰(zhàn)性。

        下面是使用 Python 開始這個項目的一些說明。首先,你需要用到如下的包:

        • 語音識別庫

        • PAGE ——拖拽式 GUI 構(gòu)建器

        • PAGE 的文檔

        • PAGE 是如何工作的視頻

        • 使用 PAGE 創(chuàng)建登錄窗口

        現(xiàn)在,我們的想法是對一些語音命令進行硬編碼,例如:

        你明白我的意思了吧?可以非常簡單明了地添加更多這樣的命令。

        因為這將是一個 最小可行性產(chǎn)品 (Minimum Viable Product,MVP)。所以,如果你必須硬編碼許多條件語句(例如,if…else),這是完全可以的。

        設(shè)置完這些基本命令后,就可以測試代碼了?,F(xiàn)在,你可以嘗試在窗口中構(gòu)建一個非?;镜牡卿洷韱?。

        這一想法的主要靈活性在于它可以用于游戲開發(fā)、網(wǎng)站和移動應(yīng)用程序。即使是使用不同的編程語言也可以。

        2、AI 博彩機器人

        網(wǎng)球比賽——圖片來自 [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 由 [Moises Alex](https://unsplash.com/@arnok?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 上傳

        博彩是一種人們預(yù)測結(jié)果的活動,如果他們猜對了,就會得到回報。在過去幾年中,人工智能或機器學(xué)習(xí)領(lǐng)域出現(xiàn)了許多技術(shù)進步。

        例如,你可能聽說過像 AlphaGo Master、AlphaGo Zero 和 AlphaZero 這樣的程序,它們可以比任何專業(yè)的人類玩家都能更好地玩 Go(游戲)。你甚至可以獲得類似 Leela Zero 這樣程序的 源碼。

        我想表達的一點是,人工智能正在變得比我們更聰明。這意味著它可以通過考慮所有的可能性并從過去的經(jīng)驗中學(xué)習(xí)來更好地預(yù)測一些事情。

        讓我們在 Python 中應(yīng)用一些有監(jiān)督學(xué)習(xí)的概念創(chuàng)建一個 AI 博彩機器人吧。要開始本項目,這里有一些你需要使用到的庫。

        • pandas——數(shù)據(jù)分析

        • NumPy——多維數(shù)組、矩陣和數(shù)學(xué)函數(shù)

        • scikit-learn ——機器學(xué)習(xí)

        • XGBoost —— 梯度提升(Gradient Boosting)

        • Matplotlib ——繪圖

        • seaborn ——統(tǒng)計數(shù)據(jù)可視化

        • pickle ——Python 對象序列化

        首先,你需要選擇一種比賽(例如網(wǎng)球、足球等)來預(yù)測結(jié)果。現(xiàn)在搜索可用于訓(xùn)練模型的歷史匹配結(jié)果數(shù)據(jù)。

        例如,.csv 格式的網(wǎng)球比賽數(shù)據(jù)可以從 tennis-data.co.uk 網(wǎng)站上下載。

        如果你對博彩不了解,下面是它的工作原理。

        • 你可以在 Roger Federer 身上以 1.3 的賠率押 10 美元。

        • 如果他獲勝,你將獲得 10 美元(實際金額),外加 3 美元(利潤)。

        • 如果他輸了,你也會輸?shù)裟愕腻X(例如,10 美元)。

        訓(xùn)練完模型后,我們必須計算每個預(yù)測的置信水平(Confidence Level),通過檢查預(yù)測正確的次數(shù)來了解機器人的表現(xiàn),最后還要關(guān)注投資回報率(ROI)。

        可以下載由 Edouard Thomas 開發(fā)的一個類似的 開源 AI 博彩機器人項目(https://github.com/edouardthom/ATPBetting)。

        3、交易機器人

        交易——圖片來自 [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 由 [Nick Chong](https://unsplash.com/@nick604?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 上傳

        交易機器人與上一個項目非常相似,因為它也需要 AI 來進行預(yù)測。

        現(xiàn)在的問題是,AI 是否可以正確地預(yù)測股價的波動?

        當(dāng)然,答案是肯定的。

        在開始之前,我們需要一些數(shù)據(jù)來開發(fā)一個交易機器人。

        • Yahoo Finance —— 獲取股票數(shù)據(jù)

        • Alpha Vantage —— 用于金融數(shù)據(jù)的實時 API

        這些來自投資百科(Investopedia)的資源可能有助于訓(xùn)練機器人。

        • 初學(xué)者的交易策略

        • 只有通過了這五步測試才能進行交易

        讀完這兩篇文章后,你會對什么時候買股票,什么時候賣股票有一個更好的理解。這些知識可以很容易地轉(zhuǎn)換為 Python 程序,從而自動地為我們做出決策。

        你也可以參考這個名為 freqtrade (https://github.com/freqtrade/freqtrade)的開源交易機器人。它使用 Python 構(gòu)建,并實現(xiàn)了多種機器學(xué)習(xí)算法。

        4、鋼鐵俠 Jarvis(基于 AI 的虛擬助手)

        AI 助手界面——圖片來自 [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 由 [Joshua Sortino](https://unsplash.com/@sortino?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 上傳

        這個想法取材于好萊塢電影《鋼鐵俠》系列。這部電影圍繞著科技、機器人和 AI 展開。

        在這里,鋼鐵俠用人工智能為自己打造了一個虛擬助手。該程序被稱為 Jarvis,可以幫助鋼鐵俠完成日常任務(wù)。

        鋼鐵俠使用簡單的英語向 Jarvis 發(fā)出指令,Jarvis 也用英語回應(yīng)。這意味著我們的程序需要語音識別以及文本轉(zhuǎn)語音的功能。

        建議使用這些庫:

        • 語音識別

        • 文字轉(zhuǎn)語音 (TTS)

        現(xiàn)在,你可以對語音命令進行硬編碼,例如:

        你還可以使用 Jarvis 執(zhí)行其他很多任務(wù),例如:

        • 設(shè)置手機鬧鐘。

        • 不停地檢查家里的監(jiān)控攝像頭,并告知是否有人在外面等著。你可以添加更多的功能,如人臉檢測和識別。它可以幫助你了解外面有哪些人或者有多少人。

        • 打開 / 關(guān)閉房間的窗戶。

        • 打開 / 關(guān)閉燈。

        • 自動回復(fù)電子郵件。

        • 安排任務(wù)。

        甚至連 Facebook 的創(chuàng)始人“馬克·扎克伯格”(Mark Zuckerberg)都將 Jarvis 作為一個輔助項目。

        5、監(jiān)控某個網(wǎng)站以了解即將舉行的藝術(shù)家演唱會

        門票——圖片來自 [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 由 [Andy Li](https://unsplash.com/@andasta?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 上傳

        Songkick 是一項非常受歡迎的服務(wù),它可以提供有關(guān)即將舉行的音樂會的信息。其 API 可用于通過以下方式搜索即將舉行的音樂會:

        • 藝術(shù)家

        • 位置

        • 會場

        • 日期和時間

        你可以創(chuàng)建一個 Python 腳本,使用 Songkick 的 API 每天檢查某個特定的音樂會。最后,只要有音樂會,就給自己發(fā)一封電子郵件。

        有時 Songkick 甚至?xí)谄渚W(wǎng)站上顯示“購票”鏈接。但是,這個鏈接可以針對不同的音樂會轉(zhuǎn)到不同的網(wǎng)站上。這意味著即使我們利用網(wǎng)絡(luò)抓取,也很難自動購票。

        相反,我們可以簡單地顯示“購票”鏈接,就像它在我們的應(yīng)用程序中一樣,以便進行手動操作。

        6、自動續(xù)訂 Let’s Encrypt 的免費 SSL 證書


        Let’s Encrypt 是一個提供免費 SSL 證書的證書頒發(fā)機構(gòu)。但是,問題在于該證書的有效期只有 90 天。90 天后,你必須續(xù)訂。

        我認為,這是使用 Python 實現(xiàn)自動化的一個絕佳場景。我們可以編寫一些代碼,在網(wǎng)站 SSL 證書到期之前自動續(xù)訂。

        可以在 GitHub (https://github.com/jaygreco/PA_SSL_AutoRenew)上查看這段代碼 以尋找靈感。

        7、識別人群中的個人

        人臉識別——作者的照片

        如今,政府已在公共場所安裝了監(jiān)控攝像頭,以提高公民的安全性。這些攝像頭大多只是用于錄制視頻,法醫(yī)專家必須手動識別或跟蹤個人。

        如果我們創(chuàng)建一個 Python 程序來實時識別攝像頭中的每個人會怎么樣呢?首先,我們需要訪問國家身份證數(shù)據(jù)庫,但我們可能沒有權(quán)限訪問。

        所以,一個簡單的選擇是創(chuàng)建一個包含家庭成員記錄的數(shù)據(jù)庫。

        然后,可以使用一個 人臉識別庫(https://pypi.org/project/face-recognition/),并將其與攝像頭的輸出連接起來。

        8、接觸者追蹤

        接觸者追蹤應(yīng)用程序——圖片來自 [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 由 [Markus Winkler](https://unsplash.com/@markuswinkler?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 上傳

        接觸者追蹤是一種識別所有在特定時間段內(nèi)相互接觸的人的方法。它主要用于像 COVID-19 或 HIV 這樣的大流行病。因為沒有任何關(guān)于誰被感染了的數(shù)據(jù),我們無法阻止其傳播。

        Python 可以與稱為 DBSCAN(Density-Based Spatial Clustering of Applications with Noise,基于密度的帶噪聲的應(yīng)用程序空間聚類)的機器學(xué)習(xí)算法一起用于接觸者追蹤。

        由于這只是一個附屬項目,因此我們無法獲得任何官方數(shù)據(jù)。目前,最好使用 Mockaroo 生成一些實際的測試數(shù)據(jù)。

        你可以查看 這篇文章(https://towardsdatascience.com/contact-tracing-using-less-than-30-lines-of-python-code-6c5175f5385f) 以了解具體代碼實現(xiàn)。

        9、自動將文件從一個文件夾移動到另一個文件夾

        Ubuntu 的的 Nautilus 文件管理器——圖片由作者上傳

        這是一個非?;镜?Python 程序,始終監(jiān)視某個文件夾,每當(dāng)有文件添加到該文件夾中時,它都會檢查其類型并相應(yīng)地將其移動到特定的文件夾中。

        例如,我們可以跟蹤我們的下載文件夾。現(xiàn)在,當(dāng)一個新文件被下載時,它會根據(jù)其類型自動將其移動到另一個文件夾中。

        .exe 文件很可能是軟件設(shè)置程序,因此將其移至“軟件”文件夾中。而將圖片(png、jpg、gif) 移動在“ 圖像”文件夾中。

        通過這種方式,我們可以組織不同類型的文件,以便快速訪問。

        10、從 YouTube 上收集職業(yè)道路相關(guān)的視頻

        YouTube 主頁——圖片來自 [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 由 [Kon Karampelas](https://unsplash.com/@konkarampelas?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) 上傳

        創(chuàng)建一個應(yīng)用程序,接受我們需要學(xué)習(xí)的職業(yè)技能名稱。

        例如,要成為一名 Web 開發(fā)人員,我們需要學(xué)習(xí):

        • HTML5

        • CSS3

        • JavaScript

        • 后端語言(PHP、Node.js、 Python、ASP.NET、或 Java)

        • Bootstrap 4

        • WordPress

        • 后端框架 (Laravel、Codeigniter、Django、Flask 等)

        • 等等。

        輸入技能后,會有一個“生成職業(yè)道路”按鈕。它指導(dǎo)我們的程序搜索 YouTube,并根據(jù)每種技能選擇相關(guān)的視頻 / 播放列表。如果有很多類似的技能視頻,那么它將選擇觀看次數(shù)、評論次數(shù)、喜歡次數(shù)最多的視頻。

        然后,程序會根據(jù)技能將這些視頻分組,并在 GUI 中顯示其縮略圖、標(biāo)題和鏈接。

        它還會分析每個視頻的時長,并匯總,然后告知我們學(xué)習(xí)該職業(yè)道路需要多長時間。

        現(xiàn)在,作為一個用戶,我們可以逐步觀看這些視頻,并成為這一職業(yè)的大師。

        結(jié)論

        通過這些獨特的編程項目來挑戰(zhàn)自己,可以讓自己保持活力,提高技能,并能幫助你探索新的可能性。

        我上面提到的一些項目構(gòu)想也可以用作你的畢業(yè)設(shè)計。

        現(xiàn)在是時候用 Python 編程語言展示你的創(chuàng)造力,并將這些構(gòu)想轉(zhuǎn)化為你引以為豪的東西了。

        原文鏈接:https://towardsdatascience.com/10-crazy-cool-project-ideas-for-python-developers-d7efeb0a345

        瀏覽 47
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            特猛特黄AAAAAA片 | 不卡中文字幕在线 | tube少妇高潮 | 中文字幕35页 | 潘金莲一级淫片免费 | 久久久久7777 | 山村精品乱肉合集乱 | 小早川怜子家庭医生手机观看 | 人与动物黄色片 | 欧美天堂在线 |