不管你是待業(yè)還是失業(yè),在這個(gè)被互聯(lián)網(wǎng)圍繞的時(shí)代里,選擇python類(lèi)的學(xué)習,就多了一項技能,還怕找不到工作?,還怕不好找工作?小編就來(lái)告訴你這個(gè)專(zhuān)業(yè)的優(yōu)勢到底體現在哪里:一些Python的學(xué)習心得,關(guān)于Python的3個(gè)謊言,別再盲目學(xué)Python了(含視頻及書(shū)籍資源),學(xué)習Python對辦公真的有用嗎?用經(jīng)驗告訴你答案??。
1.一些Python的學(xué)習心得
寫(xiě)在前面如果時(shí)光可以倒流,讓筆者重新選擇*專(zhuān)業(yè),那么筆者一定毫不猶豫地選擇人工智能方面的相關(guān)專(zhuān)業(yè)。人工智能已經(jīng)成為互聯(lián)網(wǎng)時(shí)代最熱門(mén)、最前沿的發(fā)展方向,人工智能的基礎知識也已經(jīng)加入到高中的學(xué)習大綱內。在人工智能高速發(fā)展的時(shí)代,不管是否從事人工智能研發(fā)方面的工作,了解和掌握一門(mén)編程語(yǔ)言都是非常必要的。筆者選擇了Python進(jìn)行了學(xué)習。本文的主要目的在于分享筆者的學(xué)習路徑,以及總結一些筆者在自學(xué)過(guò)程中碰到的坑。Why Python編程語(yǔ)言這么多,為何選Python?這個(gè)問(wèn)題網(wǎng)上已經(jīng)有很多相當專(zhuān)業(yè)的回答了。筆者作為初學(xué)者,最深的體會(huì )即簡(jiǎn)潔。print('Hello World')短短一行代碼即可以寫(xiě)出你的*個(gè)程序。另外,Python有內容豐富且功能強大的各類(lèi)庫可以直接調用。例如數據分析領(lǐng)域常用的Numpy、Pandas、Scipy、等。學(xué)習Python可以很快上手,調用各類(lèi)十分成熟的庫來(lái)解決各領(lǐng)域的相關(guān)問(wèn)題。搭建環(huán)境在開(kāi)始寫(xiě)*行代碼之前,其實(shí)還有一些工作要準備。Python分文2和3兩個(gè)版本,其語(yǔ)法有一部分區別,而且互相無(wú)法兼容。Python3系列目前已經(jīng)發(fā)展的較為成熟,且有相當一部分庫只支持Python3。因此筆者選擇了Python3.6。Python作為一門(mén)編程語(yǔ)言,還需要一個(gè)運行環(huán)境。在此筆者推薦Anaconda搭配Jupyter Notebook。關(guān)于兩者具體的作用和安裝方法,推薦閱讀 @猴子 老師的回答:初學(xué)python者自學(xué)anaconda的正確姿勢是什么??jupyter notebook 可以做哪些事情?如何自學(xué)環(huán)境已經(jīng)搭好了,接下來(lái)可以寫(xiě)出*行代碼了~那么如何保持高效地自學(xué)狀態(tài)呢?筆者認為Python的學(xué)習絕不是捧著(zhù)一本教程拼命死磕就可以學(xué)會(huì )的。零基礎入門(mén)*的辦法就是邊學(xué)邊用,即可以加深記憶又可以調動(dòng)興趣。筆者在自學(xué)過(guò)程中使用過(guò)三種類(lèi)型的學(xué)習資源:1、入門(mén)教程:入門(mén)教程即邊學(xué)邊用,深入淺出地了解Python。筆者學(xué)習了 @Crossin 的crossin編程教室。它的每一節課后都會(huì )附上練習,并且還有各種有趣的編程小游戲以供實(shí)踐。另外還會(huì )定期開(kāi)一些坑,提供各類(lèi)有趣的需求供學(xué)員開(kāi)發(fā)。Crossin的編程教室2、字典式教程:在寫(xiě)代碼的過(guò)程中,經(jīng)常會(huì )忘記一些細節問(wèn)題。比如如何提取列表中的某元素。這時(shí)就需要一個(gè)百科全書(shū)式的教程以供查閱。這里推薦菜鳥(niǎo)教程:Python3 教程 | 菜鳥(niǎo)教程3、編程游戲:有沒(méi)有什么辦法既可以練習代碼又很輕松愉快呢?這里推薦一個(gè)闖關(guān)編程游戲。在這里你可以利用代碼操控人物闖關(guān)冒險,迎娶白富美,走向人生巔峰: : 值(value)對的集合??梢允褂么罄ㄌ杮}或者dict()函數創(chuàng )建字典。上述數據類(lèi)型可以分為以下兩類(lèi):不可變數據:數字、字符串、元組可變數據:列表、集合、字典可以使用type()和()來(lái)查詢(xún)數據類(lèi)型。type返回類(lèi)型名稱(chēng),返回布爾值。條件判斷Python中的條件判斷語(yǔ)句是if…else…語(yǔ)句:if 條件: 執行操作1 else: 執行操作2舉例如下:在使用if…else…語(yǔ)句時(shí)一定記得在每一個(gè)if條件和else后面都加上英文冒號,且同一層的語(yǔ)句保持相同的縮進(jìn)(建議4個(gè)空格)。上述2點(diǎn)都是容易引起報錯的地方。循環(huán)循環(huán)語(yǔ)句提供了一種自動(dòng)化的、完成重復勞動(dòng)的便捷方法。其基本語(yǔ)句是for…in…,其中for指定要重復的變量,in指定循環(huán)范圍。下面舉一個(gè)案例。筆者希望將下圖中的股票代碼全部統一變成大寫(xiě)字母:首先對鍵和值的數組設置了循環(huán),并使用dict.item()方法,將原字典轉化為鍵和值的元組數組。然后在循環(huán)語(yǔ)句內規定了新值的方法,即upper(),再通過(guò)key索引將新值更新到字典中,完成目的。上述操作中的關(guān)鍵之處即在于item()方法。因為for后面跟的循環(huán)變量是key,value,屬于數組的形式,無(wú)法直接在字典中進(jìn)行遍歷,因此需要先將其轉換為數組的形式。函數函數是組織好的,可重復使用的,用來(lái)實(shí)現單一,或相關(guān)聯(lián)功能的代碼段。函數能提高應用的模塊性,和代碼的重復利用率。在實(shí)際編程的過(guò)程中,可以通過(guò)將常用運算編寫(xiě)為函數使代碼更加簡(jiǎn)潔,可讀性更高。定義一個(gè)函數的規則:函數代碼塊以 def 關(guān)鍵詞開(kāi)頭,后接函數標識符名稱(chēng)和圓括號()。任何傳入參數和自變量必須放在圓括號中間。圓括號之間可以用于定義參數。函數內容以冒號起始,并且縮進(jìn)。return [表達式] 結束函數,選擇性地返回一個(gè)值給調用方。不帶表達式的return相當于返回 None。函數的基本語(yǔ)法如下:def ( ): "函數_文檔字符串" function_suite return []使用函數的過(guò)程中涉及到以下兩個(gè)問(wèn)題,容易踩坑:參數類(lèi)型是否可變作用域上文中提到,數字、字符串、元組為不可變數據類(lèi)型,列表、集合、字典為可變數據類(lèi)型。不可變數據類(lèi)型的參數在調用函數的過(guò)程中傳遞的只是該數據類(lèi)型的值(相當于復制一份),自身不會(huì )發(fā)生變化;而可變數據類(lèi)型的參數傳遞的是該變量的引用地址,調用函數后會(huì )改變。舉例如下:b是數值類(lèi)型參數,調用函數后自身的值不變。nameList是列表類(lèi)參數,調用函數后自身的值也隨之改變。Python的作用域一共有2種:全局作用域,局部作用域。定義在函數內部的變量擁有一個(gè)局部作用域,定義在函數外的擁有全局作用域。 局部變量只能在其被聲明的函數內部訪(fǎng)問(wèn),而全局變量可以在整個(gè)程序范圍內訪(fǎng)問(wèn)。舉例如下:模塊Python 模塊(Module),是一個(gè) Python 文件,以 .py 結尾,包含了 Python 對象定義和Python語(yǔ)句。模塊讓你能夠有邏輯地組織你的 Python 代碼段。把相關(guān)的代碼分配到一個(gè)模塊里能讓你的代碼更好用,更易懂。模塊能定義函數,類(lèi)和變量,模塊里也能包含可執行的代碼。Python的一大優(yōu)勢即其擁有大量可用的第三方模塊,這些模塊(庫)可以高效地解決某些領(lǐng)域的問(wèn)題,例如數據分析領(lǐng)域的Numpy、Pandas、Scipy、等等。調用模塊可以使用三種語(yǔ)句:import語(yǔ)句import module1[, module2[,... moduleN]from…import語(yǔ)句from modname import name1[, name2[, ... nameN]]from…import* 語(yǔ)句from modname import *數據結構隊列(queue)是限定只能在表的一端進(jìn)行插入,在表的另一端進(jìn)行刪除的特殊的線(xiàn)性表。即“先進(jìn)先出”。堆棧(stack)是一個(gè)只在表尾進(jìn)行刪除和插入操作的線(xiàn)性表。即“后進(jìn)先出”。在列表中,可以使用append()方法添加元素至隊尾。執行隊列操作可以通過(guò)popleft()方法刪除列表最左側元素;執行堆棧則可以通過(guò)pop()方法刪除最右側元素。寫(xiě)在*筆者認為編程是一件讓人快樂(lè )的事,使用代碼解決問(wèn)題以后獲得的成就感是難以言表的。而且高效的編程學(xué)習方式一定是邊學(xué)邊做,而不是對著(zhù)復雜的教程硬啃。千萬(wàn)不要等到學(xué)完所有的理論才開(kāi)始動(dòng)手寫(xiě)*行代碼!Hello World,就在此刻。
2.關(guān)于Python的3個(gè)謊言,別再盲目學(xué)Python了(含視頻及書(shū)籍資源)
本人18年自學(xué)Python,現在是一名前端開(kāi)發(fā)。雖然不是大佬,但我還是想先潑點(diǎn)冷水!不要被市面上的各種Python培訓廣告沖昏了頭腦:① 學(xué)完P(guān)ython,并不能立馬拿一兩萬(wàn)的工資,甚至可能找不到工作?、赑ython也沒(méi)有那么簡(jiǎn)單,不是有手就行?、蹌e想著(zhù)1個(gè)月、2個(gè)月就能學(xué)會(huì ),你至少得騰出半年時(shí)間全職學(xué)習!如果你還是執意要學(xué)Python,那么好,接下來(lái)我們看看怎么學(xué)。Python作為一門(mén)腳本語(yǔ)言,難度上相較于其他語(yǔ)言略微簡(jiǎn)單點(diǎn)。但對于沒(méi)有計算機基礎的人來(lái)說(shuō),可能最開(kāi)始配置Python編譯環(huán)境都能讓他望而卻步。這里推薦一個(gè)無(wú)需安裝配置的在線(xiàn)編程平臺(新手可以先在線(xiàn)寫(xiě)一段時(shí)間的代碼,適應下)邊學(xué)邊練,零基礎在線(xiàn)編程學(xué)習平臺 1、Python學(xué)習路線(xiàn)圖學(xué)習一定不是盲目的,只有先明確了要學(xué)哪些東西,怎么學(xué),才能更高效地去學(xué)Python。這是Python的整個(gè)知識體系圖譜,對于新手來(lái)說(shuō),沒(méi)必要學(xué)那么多。先把Python基礎和進(jìn)階知識吃透,才是入門(mén)的關(guān)鍵。后續你是往前端開(kāi)發(fā)深造,還是去新潮時(shí)髦的大數據、人工智能,就全憑自己的興趣。但我相信這時(shí)候的你,應該不會(huì )像現在這么迷茫。2、關(guān)于如何學(xué)Python其實(shí)網(wǎng)上的Python課程很多,都是比較有體系的。學(xué)Python入門(mén)和進(jìn)階的知識,用網(wǎng)課完全足夠。但Python本質(zhì)上是對一門(mén)語(yǔ)言工具的運用,實(shí)戰比理論更重要。我們在學(xué)習的時(shí)候一定要多敲、多練、多思考?。?!寫(xiě)代碼不只是跟著(zhù)視頻課或者照著(zhù)書(shū)本寫(xiě)完就行的,我們要理清每行代碼的邏輯。剛開(kāi)始學(xué),*對每一句代碼都加以注釋?zhuān)瑤椭覀兝砬暹壿?,加深印象。同時(shí),學(xué)完一個(gè)知識點(diǎn)后應該多去找對應的案例來(lái)練習,做到理論與實(shí)戰的深度結合。推薦一套免費的Python課:Python入門(mén)到精通137講 這套Python課的每一個(gè)知識點(diǎn)講完,都會(huì )有對應的實(shí)戰案例來(lái)練習,強烈推薦給新手!3、Python學(xué)習資源Python學(xué)習網(wǎng)站名稱(chēng)鏈接說(shuō)明代碼課堂 Py編碼規范中文版 Code Examples Module of the Week Py標準庫的使用菜鳥(niǎo)教程 cookbook》算法類(lèi):《算法圖解》《Python算法》《算法導論》計算機網(wǎng)絡(luò )書(shū)籍:《計算機網(wǎng)絡(luò ):自頂而下》《TCP/IP詳解1:協(xié)議》《計算機網(wǎng)絡(luò )基礎》*,自學(xué)Python最重要的就是心態(tài)。我們在學(xué)習過(guò)程中必然會(huì )遇到很多難題,可能自己想破腦袋都無(wú)法解決。這都是正常的,千萬(wàn)別急著(zhù)否定自己,懷疑自己。找一個(gè)靠譜點(diǎn)的師兄,沒(méi)事知乎一下,其實(shí)這些難題也就迎刃而解了。
3.學(xué)習Python對辦公真的有用嗎?用經(jīng)驗告訴你答案
Hello大家好,我是黑俠,一個(gè)帥氣、善良、勇敢、正直都和我沒(méi)關(guān)系的UP。Emm,開(kāi)玩笑,歡迎來(lái)到我的視頻頻道。今天來(lái)聊一聊學(xué)習python的事情,相信很多人都看到過(guò)朋友圈出現的python廣告,抑或是各種公眾號推出的python學(xué)習課堂,并且大多數都以“學(xué)會(huì )python讓你辦公效率直線(xiàn)提升,升職加薪一路狂飆”為賣(mài)點(diǎn)來(lái)進(jìn)行宣傳,那么,我這里就要提出一個(gè)問(wèn)題了。Python究竟適不適合辦公人士來(lái)學(xué)習,以及學(xué)了之后究竟能不能給我的工作來(lái)帶質(zhì)一般的飛躍?目前我在做兼職文案,以我的親身經(jīng)歷為例,我可以很負責的告訴大家,學(xué)習python確實(shí)可以在某些方面提升你的工作效率,但是,并不是每個(gè)人都適合去學(xué)習它。去年9月份,我刷到朋友圈的python廣告,廣告語(yǔ)中宣傳的“高效、省時(shí)”很是吸引人。但是,促使我真正下定決心學(xué)python的,還是這些廣告中販賣(mài)的職場(chǎng)焦慮。那么,這些賣(mài)python課程的,是如何販賣(mài)焦慮的呢?他們會(huì )在廣告文章或者視頻中突出這么一點(diǎn):同事下班比我早,就是因為用了python辦公;面對海量數據和文檔要整理,我卻無(wú)能為力,但是用了python便可以快速搞定;學(xué)習一種編程語(yǔ)言,可以讓自己的職業(yè)發(fā)展更加有力。不得不說(shuō),現在的廣告很能抓住人的心理,學(xué)習python可以讓職業(yè)發(fā)展更加順暢這一點(diǎn)確實(shí)擊中我了。從18年初開(kāi)始,我一直在進(jìn)行能力上的提升,學(xué)了python之后,我豈不是文案+編程樣樣精通了。于是,抱著(zhù)這樣的心理,我從去年9月份學(xué)到今年4月底,學(xué)習時(shí)長(cháng)8個(gè)月整。然而,現實(shí)是殘酷的。這八個(gè)月來(lái),我一直在利用空余時(shí)間學(xué)習,有的時(shí)候學(xué)到晚上十一二點(diǎn)。但是,學(xué)了這么久的python,對我的文案編輯工作沒(méi)有一點(diǎn)實(shí)際性的幫助。說(shuō)到這里,主觀(guān)因素是我太盲目了,把寶貴的時(shí)間用在了別的地方。如果用8個(gè)月來(lái)學(xué)寫(xiě)作或者進(jìn)修相關(guān)的專(zhuān)業(yè)知識,會(huì )不會(huì )我的工作能力已經(jīng)大幅提高了?其實(shí)這里不能怪python機構的鍋,從商業(yè)角度來(lái)說(shuō),他們售賣(mài)python課程,進(jìn)行一定程度的營(yíng)銷(xiāo)和推廣是沒(méi)問(wèn)題的,這個(gè)我可以理解。這里要特別講明一下,有些python機構賣(mài)的課其實(shí)很淺顯,質(zhì)量參差不齊,這一點(diǎn)需要小伙伴們仔細辨別。他們把信息展現給你,學(xué)不學(xué)其實(shí)是我們來(lái)決定的。所以,各位在下定決心要學(xué)python之前,一定要仔細思考清楚,是否真的需要這門(mén)編程語(yǔ)言來(lái)輔佐你的工作。其實(shí),還是有一部分比較不錯的python培訓機構會(huì )明確標注,哪類(lèi)人適合學(xué)習python。但是,標注對于小伙伴們做決定,只能起到一定的幫助,實(shí)際還是要自己仔細琢磨。我這篇視頻,就是來(lái)給大家分析一下,究竟哪些人群適合學(xué)python。由于python萬(wàn)能膠水的屬性,前端、后端都能做,雖然不比java等主流編程語(yǔ)言在IT界有地位,但是其在大數據、人工智能、數據分析、爬蟲(chóng)等領(lǐng)域還是有非常重要的作用的。但是,當我周邊有很多小伙伴都說(shuō)要開(kāi)始學(xué)python時(shí),我才發(fā)現,大多數的人都是因為職業(yè)焦慮和恐慌而學(xué)習的python,就像我一樣盲目。他們并不知道,自己究竟適不適合學(xué)習python。你真正要解決并面對的,是引起你職業(yè)焦慮和恐慌的誘因,而不是用學(xué)習的借口,掩蓋住自己身上發(fā)生的真正問(wèn)題。接下來(lái)看一下哪些人需要學(xué)習,哪些人不需要。哪類(lèi)人適合學(xué)python:1. 在實(shí)際工作業(yè)務(wù)中,能夠用得到python的人。比如會(huì )計、金融類(lèi)、分析師等經(jīng)常和數據打交道的人。學(xué)會(huì )python之后,在搜集數據、批量處理數據報表、千萬(wàn)量級的數據導入導出、數據可視化等方面,均可以應對。2. 空余時(shí)間多人的。假如你平常工作不忙,時(shí)間充足,且喜歡編程,那么你就非常適合來(lái)學(xué)習python。哪些人不適合學(xué)python:1. 工作時(shí)間特別忙的人:既然你平常工作已經(jīng)非常忙了,那么根本抽不出時(shí)間來(lái)學(xué)python?;蛘吣銛D出自己的休息時(shí)間來(lái)學(xué),但是這會(huì )讓你的精力大打折扣,以至于白天上班的效率都會(huì )下降,得不償失。2. 主業(yè)根本用不到python,但是卻想提升業(yè)務(wù)能力的人:要找對重點(diǎn),在職場(chǎng)中,你的哪方面薄弱,就從哪方面入手進(jìn)行學(xué)習和鍛煉。既然你的業(yè)務(wù)根本用不到python,那你還要堅持學(xué),其實(shí)就是自討苦吃。把這個(gè)時(shí)間和精力,放在提升主要業(yè)務(wù)上,升職加薪?jīng)]得問(wèn)題。3. 吃不了苦的人:這里是針對想要以python為職業(yè)發(fā)展的人來(lái)說(shuō)的。python作為辦公用途,其實(shí)只發(fā)揮了它的一小部分作用。真正使用到python的地方,是在上述所說(shuō)的大數據、人工智能、數據獲取和分析等,這些領(lǐng)域都需要你擁有一定的計算機基礎,比如數據庫操作與原理、數據算法、計算機系統原理等等。如果作為一個(gè)門(mén)外漢來(lái)學(xué)習python,必須要吃很多苦,攻讀很多資料。而且,當你掌握了python之后,還需要學(xué)習一些其他的語(yǔ)言,當程序員不能只會(huì )一門(mén)編程語(yǔ)言。好了,以上就是今天的視頻分享,雖然我學(xué)的python目前用不到,但是既然已經(jīng)學(xué)了8個(gè)月,我就打算在后續時(shí)間里,把它完成并掌握,不能愧對自己以往的努力和決定。我學(xué)的是python爬蟲(chóng)方向,如果你有相關(guān)的問(wèn)題和想法需要討論,歡迎評論區留言互動(dòng)吧。我是黑俠,我們下期再見(jiàn)!拜拜。
就拿大數據說(shuō)話(huà),優(yōu)勢一目了然,從事IT行業(yè),打開(kāi)IT行業(yè)的新大門(mén),找到適合自己的培訓機構,進(jìn)行專(zhuān)業(yè)和系統的學(xué)習。