1. 一周就學會python你真的能夠做到嗎
也許在很多人看來,python是一門很「容易」學的編程語言,「容易」到什麼程度?他們認為:一周就能學會python!
在知乎上有一條有趣的動態:
該條動態的作者認為一個高考600分以上的人,一天時間能學會 Python,一周時間就能推完 Andrew Ng 的 ML 課程。
恰好,我是一個高考600分以上的人,學過 Python,也看過 Andrew Ng 的 Machine Learning 課程。所以我想設身處地就這個話題聊一聊,到底能不能在短時間內學會 Python,這里我們不限制時間為一天,就一周好了。
我並不反對上圖中作者的觀點,因為我確實只用了一天就初學和上手了 Python(大學四年級),還寫出了小應用。不過這個學習成果存在一個不可忽略的前提條件:在學習 Python 之前,我已經寫過兩年 C++ 和一年 java 了。
和沒有一點基礎的人相比,我已經擁有了大量的編程實踐經驗和計算機理論知識,所以我能一天上手 Python,並不是非常奇怪和罕見的現象。
針對上面的問題,我的觀點是:即使是高考600分以上的人,如果沒有一定的編程基礎,也很難在一周內學會 Python。
當然,也不排除有人是天才,可以速成。但是至今我還沒有發現這樣的人。我女朋友、我周圍的同學,高考都是600分甚至650分以上,但我真的沒有見過誰能一天或一周就學會編程的。
那麼,更一般的情況是,高考600分以上的人尚且不能一周學會 Python,那些沒有600分以下的人是不是更難學會呢?從概率上講,是的,這里不是歧視,只是闡述一種現象。
但為什麼時常有人說可以快速入門 「Python」,是他們在說假話嗎?
我想他們並沒有說假話,只是忽略了一個關鍵的問題——我在前文提到的「基礎」。有了基礎之後,一周入門 Python,速成 Django,一天學會爬蟲,這都是再正常不過的事情了。但這些對於完全沒有接觸過編程的同學來說,實在是難度太大。
之前聽過我的一個直系學長關於創業的講座,那是2014年,我才大二。學長的名字杜昶旭,朗播網的創始人兼CEO,現在早已有了一份自己的事業。我印象最深刻的一幕,是台下的同學請他分享一下自己在創業過程中遇到的困難,他答道——當你走過荊棘、越過重重困難走到山頂的時候,你看到的是一望無際的遠方和光明,之前的困難你都會忘得一干二凈。
這句話我十分認同,我在第一次高考失利後復讀過一年,每當我讀到自己在復讀時期記錄的點滴生活,都會感嘆那些日子是多麼艱難,卻總是忘記那就是我曾經的生活,忘記復讀的那個人是我,忘記那些日子究竟有多苦。唯一記得的就是我復讀後的成績——比前一年多考了140多分。
人在經歷重重磨難並取得暫時的成功後,會很容易忘記自己受過的苦,記得的只是成功。
所以,當有人告訴你可以快速學會一項大部分人都很難學好的技能時,有三種可能,一是他在裝逼,二是他是天才,三是他努力過了卻忘記了自己的努力。大部分情況下,是第三種。
一周學不會 Python。
為什麼很多人都覺得 Python 簡單,到底是誰在說 Python 簡單,Python 是否真的簡單,如果真的簡單它到底簡單在哪裡?
我想,很多人說 Python 簡單指的是「語法」層面的簡單。的確如此,Python 和其他編程語言如 C++、Java、PHP、Go 相比,語法要簡單很多。
除了語法簡單,Python 天然適合和數據打交道,對數據的處理相對其他編程語言也是比較方便,內置的數據結構也比較少。
但是我們很容易忽略一個問題:編程語言不能獨立於業務而單獨存在,編程是為了解決問題的。各個編程語言都有自己擅長的方面,比如 Linux 內核系統調用、底層交互方面,C++ 可能更占優勢;實際業務場景中有大量的計算任務和並發時,可能要達到某一參數指標,Go 會更加簡單。
只是語法簡單沒有用,在能滿足業務要求的前提下,誰最容易達成目標,誰才是最簡單的。
況且,Python也沒有傳說中那麼簡單,只會語法和能做出東西是有本質區別的,就像你會了 Python 語法,但你能做出數據分析嗎,能寫爬蟲嗎,能開發 Web 嗎?任何一門編程語言往深學,都會成為工具,能用工具完成具體的任務才是真的學好並用好了它。
我喜歡買書,也喜歡看書,下圖是我從書櫃上隨便拿的幾本關於Python的書,有的我看完了,有的正在看,有的還沒看,每本書都有幾百頁厚,任何一個方嚮往深了學,都不簡單。
我們學習的時候,千萬不能在剛開始的時候就給自己一個心理暗示:這很簡單,很容易學好,如果這樣,你將很難在學習中堅持下去。
我時常看到一個有趣的現象,不少人都很在意「編程語言排行榜」,如果自己正在學習 Python 或 C++,而 Python 或 C++ 的排名又上升了,他就會格外開心,反之就開始罵爹喊娘。
其實大可不必這樣,學習編程的時候一定不要把自己限定在某一門編程語言中。在實際工作中,大多數情況下我們是根據項目來選擇合適的編程語言,而不是根據編程語言選擇合適的項目。
比如你一直寫 C++,但是來了一個適合用 PHP 做的需求,即使你不會 PHP,你也得用 PHP 寫。不會寫也要一天入門,工作就是這樣的,別問我為什麼,工作一年半我已經寫過 JAVA、JavaScript、C++、PHP、Python、Lua、Go ... 而我當初入職面試的崗位是C++工程師...
多了解一點沒壞處。
經常有朋友們問我:
很多初學編程的朋友對如何入門傷透了腦筋,而我的回答只能是:
其實大家現在學習編程比我們當初的條件好多了,我們剛學編程那會兒,慕課還沒有流行起來,我那時學C語言看的還是譚浩強的書。哪裡有現在這么方便,動不動就送你1024G資料的福利,掩面。
其實學編程和學外語一樣,都是階梯式進步的,而它的特點就是,在學習很長一段時間後都感受不到進步,但突然某一天就開竅了,想通了很多問題,感受到自己的經驗值得到了大幅度的提升,然後又會陷入一段平淡期。
當你多經歷幾次這樣的循環,你就算是學會編程了。
學習編程,我們不應該以天為單位,而應該以年為單位。如果非得給一個最快能入門的時間,那就定為三個月吧,如果你真的在三個月里用大量的時間投入去看一門課,啃一本書,三個月後你應該會到達一個新的 Level,就算是入門了。
更多Python知識,請關註:Python自學網!!
2. 為什麼Python被稱為「膠水語言」
膠水語言,原本是Python針對一門叫做perl的語言來講的。。。。在很長一段時間里,perl語言都是python面臨的最大競爭對手。。就和java與C#之間的情況差不多。。
perl語言是捧著金飯碗出生的,剛一出生,就有當時最主流的操作系統Unix保駕護航,成為了Unix內置的標准件,一大群的編程教父為其代言,更少不了一大群瘋狂追捧的鐵桿粉。。。在很短的時間內,就建立起了一批龐大的用戶群,被稱為「夢幻腳本語言」。一時之間,所向無敵。
大概兩年之後。。與Perl採用同樣設計思路的另一門語言,Python誕生了。。一出生地位便十分尷尬。。。。因為與perl語言作用重疊,而perl語言又占據了Python可以發揮的幾乎一切領域。。無論Python如何獻殷勤,拋媚眼,最終也沒能攀上Unix這個爹。。只好硬著頭皮,以小三的身份,嫁進了Linux的門。。。
作為shell和perl之後,第三種嫁入Linux大院兒的語言,python為了凸顯自己的存在價值,便以膠水語言自居。。。即可以在shell與perl之間和諧共處。。。做了幾年小三之後,隨著Unix閉源,Unix陣營的迅速消亡。。Perl的娘家突然之間倒台了。。
Linux把Perl作為標准件的主要原因,是為了兼顧Unix操作習慣。。。由於Unix陣營的倒台。。Perl也就不像以前那麼得寵了。。Python也逐漸開始做一些「本該由Perl來做的事情」。。。隨著後來Python越來越「不守本分」。。導致Perl的地位開始下滑。。直到最後雙方對調。。Python轉成了正房,Perl變成了小三。。
今天的Python,要風得風,要雨得雨,在Linux平台更是唯我獨尊,早就不是當年的膠水語言了。。。
————以上為個人2015年的回答————
本人做出以上回答時,Python還是個小語種。當時本人只是站在「動態語言」的立場下進行回復,而不是站在「所有編程語言」的立場之下。
當時本人實在沒想到,四年之後,Python會變得這么火,而且火的有些過頭。因此對之前的回復進行一些補充。
但由於歷史問題導致,Python是一門動態語言,相對於JAVA,C#之類的靜態語言來說,並不適合編寫較大的程序。盡管編寫代碼很省事兒,但卻難以維護,後續問題較多。因此Python並不能替代靜態語言,更適合作為一門輔助語言來使用。
3. 手機上的Python怎麼運行操作,代碼在電腦上運行的出手機卻不行
如何讓自己在電腦上寫的python腳本在手機或android系統上運行
可以安裝一個Python模擬器,比如QPython。
安裝完這個apk,就可以在Android上運行Python腳本了。
關於QPython3L,網上搜索使用說明:
QPython - 使用說明
A. 面板
圖 - QPython 社區
你可以在社區中遇到其他 QPython 用戶,你可以問問題,參與話題討論,向開發者提交 BUG / 建議等等。
此外,我們將會積極地推動 QPython 最終完全開源, 因此也歡迎熱心的用戶加入我們,我們迫切地需要你們在下列領域幫助我們:
語言國際化
幫助我們進行測試並且提交測試反饋
反饋問題、提交良好的建議
建立本地社區,發起本地技術講座,共同學習
其他
4. 西安python培訓學校哪家好
西安python培訓學校【達內教育】好,該機構聘請專業的講師,堅持對學員全程教學,以實戰項目做指導,面對面現場教學。
【達內教育】優點具體如下:
1、企業級項目實戰:課程由真實企業級項目貫穿,以項目驅動學習,不僅學習技術,更要掌握應用,真實應用帶動學員的學習熱情,幫助學員更好的提高實戰應用能力,達到企業級用人標准。
2、原理級深度講解:內容涉及基礎知識、架構設計、編程思想,從代碼到知識點,從架構到思想,提升學員對編程理解,幫助學員成為會思考、能設計、強架構、重實現實戰型技術人才。感興趣的話點擊此處,免費學習一下
想了解更多有關python的相關信息,推薦咨詢【達內教育】。【達內教育】重磅推出「因材施教、分級培優」創新教學模式,同一課程方向,面向不同受眾群體,提供就業、培優、才高三個級別教學課程,達內「因材施教、分級培優「差異化教學模式,讓每一位來達內學習的學員都能找到適合自己的課程。達內IT培訓機構,試聽名額限時搶購。
5. 俺們是Python的小菜,求大神幫忙解決個問題
原因:
你當前使用的python文件JudgeYear.py,是用的是非UTF-8編碼的,即你用的是GBK編碼的。
當你運行你的JudgeYear.py時,由於你沒有指定你的JudgeYear.py文件本身所採用的編碼類型,所以python解析器會去按照默認的UTF-8去解析你的JudgeYear.py,但是實際上你的JudgeYear.py是用GBK編碼保存的,所以就出現上面的解析的錯誤了。
解決辦法:
兩種:
(1)指定JudgeYear.py的編碼為GBK
做法:
在你的文件最開始部分,添加兩行代碼:
#!/usr/bin/python
#-*-coding:gbk-*-
這個是用來指定當前文件,即你的JudgeYear.py文件,編碼為gbk的。
(2)不指定JudgeYear.py的編碼,但是把JudgeYear.py文件本身的編碼轉換為UTF-8
做法:
用Notepad++或VSCode,去將JudgeYear.py轉換為UTF-8編碼
6. 用python編寫與mysql資料庫連接並實現斷線重連的問題
conn本來 就已經被你定義成了 函數, conn.ping()當然不存在了。而且你要的資料庫連接c,還被手動關閉了。我覺得有兩點
1. 按照你這個腳本的情況,你用一次,就新建一個資料庫連接問題應該不大。
2. 要保持使用一個連接的話。把c作全局變數 c=MySQLdb.connect(user="root",passwd="12345",host="localhost",db="yingtest")
使用的時候,直接用c但是不要close,當然要先判斷這個連接是否已經斷開了,如是再重新連一次。
或者把連接放到一個連接池裡面,用的時候直接去連接池裡面取。連接池可以看看 DBUtils模塊
你說的conn.ping() 看看是不是在c裡面,c=MySQLdb.connect(user="root",passwd="12345",host="localhost",db="yingtest")就是這個對象裡面,看看有沒有判斷連接是否斷開的方法。 因為沒用過 MySQLdb模塊。
7. python為什麼叫python
因為python的腳本特性,python易於配置,對字元的處理也非常靈活,加上python有豐富的網路抓取模塊,所以python被叫做爬蟲。
Python爬蟲開發工程師,從網站某一個頁面(通常是首頁)開始,讀取網頁的內容,找到在網頁中的其它鏈接地址,然後通過這些鏈接地址尋找下一個網頁,這樣一直循環下去,直到把這個網站所有的網頁都抓取完為止。
如果把整個互聯網當成一個網站,那麼網路蜘蛛就可以用這個原理把互聯網上所有的網頁都抓取下來。
爬蟲,即網路爬蟲,大家可以理解為在網路上爬行的一隻蜘蛛,互聯網就比作一張大網,而爬蟲便是在這張網上爬來爬去的蜘蛛,如果它遇到自己的獵物(所需要的資源),那麼它就會將其抓取下來。
比如它在抓取一個網頁,在這個網中他發現了一條道路,其實就是指向網頁的超鏈接,那麼它就可以爬到另一張網上來獲取數據。
(7)python娘擴展閱讀:
python的發展歷程
自從20世紀90年代初Python語言誕生至今,它已被逐漸廣泛應用於系統管理任務的處理和Web編程。
Python的創始人為荷蘭人吉多·范羅蘇姆 (Guido van Rossum)。1989年聖誕節期間,在阿姆斯特丹,Guido為了打發聖誕節的無趣,決心開發一個新的腳本解釋程序,作為ABC 語言的一種繼承。
之所以選中Python(大蟒蛇的意思)作為該編程語言的名字,是取自英國20世紀70年代首播的電視喜劇《蒙提.派森乾的飛行馬戲團》(Monty Python's Flying Circus)。
就這樣,Python在Guido手中誕生了。可以說,Python是從ABC發展起來,主要受到了Mola-3(另一種相當優美且強大的語言,為小型團體所設計的)的影響,並且結合了Unix shell和C的習慣。
Python 已經成為最受歡迎的程序設計語言之一,自從2004年以後,python的使用率呈線性增長。Python 2於2000年10月16日發布,穩定版本是Python 2.7,Python 3於2008年12月3日發布,不完全兼容Python 2。
由於Python語言的簡潔性、易讀性以及可擴展性,在國外用Python做科學計算的研究機構日益增多,一些知名大學已經採用Python來教授程序設計課程。
例如卡耐基梅隆大學的編程基礎、麻省理工學院的計算機科學及編程導論就使用Python語言講授。眾多開源的科學計算軟體包都提供了Python的調用介面,例如著名的計算機視覺庫OpenCV、三維可視化庫VTK、醫學圖像處理庫ITK。
8. 既然萬物皆可娘化,那麼 c++ 娘,python 娘,java娘是什麼樣
不妨DIY一下,注意氣質。c++ 娘要敏捷和干練,python 娘要簡單而優雅,java娘要高貴而穩重。