-
1 # 藍洛333
-
2 # 小健的程式猿生活
語言只是一個工具
題主說是非程式猿,那麼我這麼認為,是沒有接觸過相關計算機知識的吧
我建議:先從C學起。為什麼這麼說呢, 是因為自己本身也是從一個小白學起,很明白題主所面臨的困擾,不知從何入手。
我感覺,計算機入門前與入門後差別就是,你想學新一門知識的速度會很快。
好滴,現在告訴你從C學,為啥呢?
因為C是最接近底層的語言的語言了,雖然也是高階語言,但對C指標直接操作記憶體,對C的語法,C的結構,能夠完整的認識到,會產生很好的幫助。
C簡單易學,但深入較難,也是,什麼東西都是深入較難。題目現在若真心想學,可以試著先去學C,開始瞭解語法,自己動手寫一寫簡單的程式,萬事開頭難。
先專心學一門,然後C++,資料結構與演算法的簡單學習,再轉py js等等語言,你會發現是相通的。
真心想學習,可以私聊問我,我也願意幫助你。
以上,如果對你有幫助,點點關注吧!
-
3 # 愛科技的偉
對於初學者,學習c語言肯定是沒有什麼壞處的,但是相比python,c語言是比較簡單的,但是我們在學習c語言之前一定要做好基礎準備,一些大學都是要學習c語言的,可見c語言是多麼的重要。
c語言是一種編譯的語言,而python一種指令碼語言。
2.全域性變數方面
在python中,我們需要引用別的模組需要引用import引入,而在c語言中,需要在頭部使用include去引入。
3.狀態不同
c語言是一種靜態語言,而Python是動態的語言。
4.陣列和list的不同
c語言中的陣列,裡面都是數字,而list包含很多不同的元素。
如果沒有程式設計基礎,強烈建議培養程式設計思維,先學習C語言,這樣在學習其他高階語言會顯得比較輕鬆。
但這裡要說的是,如果你是想學習一門語言去找一份工作,Python目前可能並不是太合適。
如果你是一名資深程式設計師,強烈推薦你將Python做為第二語言,未來,它將助你在激烈的職場競爭中拔得頭籌。比如:大資料、機器學習、資料處理、自動化運維、爬蟲、資料採集與視覺化、web後端等等。
-
4 # 雲渺書齋
Python
Python是一種解釋型、面向物件、動態資料型別的高階程式設計語言。是一個高層次的結合瞭解釋性、編譯性、互動性和麵向物件的指令碼語言。
Python的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構。
Python是一種解釋型指令碼語言,可以應用於Web和Internet開發、科學計算和統計、人工智慧、桌面介面開發、軟體開發、後端開發、網路爬蟲等。
Python優點簡單易學,邏輯簡單,語法更貼近英語,初中水平英語即可入門初級Python工程師;免費開源,可以自由閱讀和修改它的原始碼,共享時代,讓python變得更簡單;Python程式無需修改就可以在下述任何平臺上面執行;Python程式碼具有極佳的可讀性;Python擁有許多功能強大且易用的標準庫,從而讓程式設計更方便;Python前景Python開發速度快、語法學習簡單、生產效率高,這兩年在國內上升勢頭非常猛!目前躍居全球TIOBE開發語言排行榜第五!目前市場上會Python的程式設計師少之又少,各大招聘網站日均需求量高達15000+,企業高薪爭搶Python人才。
-
5 # 螢幕外飄逸的光
由於你是非程式設計師,相關基礎知識少,如果從c語言入手,會很枯燥無味,加上c語言偏向於底層硬體,記憶體分配需要自己寫,就是有一定程式設計基礎的學好c語言都不那麼容易。
這就好比一個人還沒有摸過手機,甚至不知道手機長什麼樣,決定要學造手機,沒有相關基礎,一上來就學微控制器,學cpu底層一樣,很多專業知識點你根本搞不懂,更無從下手,每個字都認識,但是卻完全看不懂,這樣的感覺肯定會使你喪失信心失去耐心,知難而退,放棄學習。
如果一開始就借來一部手機,先學習如何安裝手機軟體,如何使用手機的各種功能,拆解手機,學會換手機零件,而不是先從主機板、cpu、供電底層研究,先簡單後容易。
c語言偏向於底層造輪子,python,各種輪子,各種零件都已經給你準備好了,你拿來組裝就是了,不需要深入底層,你用python組裝了很多有趣的東西,比如爬蟲,人工智慧等,信心大增,培養了濃厚的興趣,也知道了軟體執行的大體流程,這個時候你再學習c語言,更加深入的研究底層運作,你已經具備了相關的基礎知識,學c語言也就得心應手了。
吐糟一下現在的大學教育,一上來就學c語言,充斥著各個大學課本,尤其是那個什麼譚xx的,不符合人類認識事物的客觀邏輯,好多人都會覺得這玩意真的好枯燥,c語言一堆程式碼,藍底白字,各種命令,抽象枯燥,不少人學了半天c語言,還搞不清這玩意能幹啥,一臉矇蔽,多少人因此打退堂鼓,譚xx的c語言教程應該改名為《c語言從入門到放棄》勸退系列叢書
程式設計師的核心問題是什麼?控制複雜度。
萬事萬物都是複雜無序的,程式設計師能掌控這些事物,靠的是能掌控複雜度。把複雜的事物去除葉子,切割,只留下主幹,只關注核心簡單的小問題,解決了小問題,把這些小問題串起來就解決了大問題,要學會分割問題,抽象問題,學東西也是要以程式設計師的邏輯去學,c語言牽扯很多細節問題,python準備了各種零件,等著你來裝配,這是一種高度抽象,遮蔽了很多細節,學東西由淺入深,你沒有基礎的話,那就先從python學起
-
6 # 老牛實驗室
程式語言好不好,是針對你的目標。
python語言,大家一直說語法簡單,上手快。而很多人真正學習進來後,會發現,python涉及的內容太廣了。好長時間後,還是在原地打轉轉。python,是一種面向物件的指令碼語言,在window、linux、mac上都能執行,最早是用來自動執行命令,進行系統維護。主要目標不是生成類似exe的二進位制檔案。後來大家覺得python簡單、可擴充套件,就都去擴充套件,搞的python體系越來越龐大。特別是python的數學擴充套件庫:numpy、scipy、matplotlib等,在科學計算、人工智慧、大資料處理等方面被廣泛使用,近些年python大有成為第一語言的趨勢。
c語言,這種比python早20-30年的語言,本身基本接近底層,是一種面向過程的語言。如果你要進行嵌入式開發,寫驅動程式,或跟硬體打交道,或者對程式效能要求非常高,那可以選這個。不過語法相對晦澀,入門困難一些,但入門後,幾十年變化不大。
現在人們說的c語言,實際經常是其後輩語言c++。c++擴充完善了c語言,提供了面向物件特性,提高了開發效率。但相對來說,還是有些難以上手。
python VS c,就類似學日語跟學英語。
中中國人學日語,初期感覺有很多漢字,不用學,就能大概猜出意思,感覺入門很容易。可你真正深入以後,會感覺日語有很多莫名其妙的東西,男女用詞都不一樣。。。有些暈了!這就是python的學習過程。python可以被成為萬能的語言,各種擴充套件,千奇百怪,數量龐雜。關鍵是要找到一個合適的第三方包,就能很快解決問題,否則,就迷路了。
學英語,大家可能都有過為記單詞而苦惱,為搞清楚語法而上火。要是沒有老師、家長在後面追著,很多人會放棄。可等你入門了,自學新單詞,能直接讀出發音,找到詞根,意思也就差不多了。c跟c++,就是這樣。要有恆心!!!
非程式設計師,學python,還是c。還是看你要做什麼。除去底層的開發,其他推薦python。
入門的話,可以從菜鳥教程開始,先把程式碼跑一遍再說。
祝你好運!
-
7 # IO行者
這主要看你學來幹什麼了
1.如果是想玩花的,比如nlp 深度學習之類的,就學python
2.硬體方面,做點機器人,小車什麼的就學c
3.如果是數學愛好者,想學程式碼來實現演算法,建議用c/c++
-
8 # 小唐IT實用技術講解
對於這個問題的回答,小唐覺得應該先從Python和C語言的語言特性來回答。
Python語言其實是膠水語言,Python語言能把不同的語言進行一個無縫的黏合。Python語言是以簡潔和方便而出名的。Python的簡潔呢從兩個方面來說,第一個是其本身語法的簡潔,第二個是其程式設計風格的簡潔,讓人容易入門。Python語言的方便性,主要得益於Python語言龐大的第三方庫。在實際中,Python語言主要是用於編寫自動化指令碼和機器學習方向發展的,也會經常用來處理網際網路大資料的。
而我們的C語言呢,作為元老級語言沿用至今那肯定也是有很多優勢的。首先,用C語言編寫的程式碼比Python快,因為C語言是更加接近作業系統的底層,甚至會直接操作操作硬體邏輯。而我們的客戶端軟體的開發,以及編寫驅動程式的時候,首先,就會是C語言。因此,涉及到客戶端和作業系統層次的軟體用C語言是最佳的原因。
至於,你的提問,對於非程式設計師Python和C學習那個更好,並沒有一個絕對的答案。因為Python和C都有各自的優勢和各自的缺點。至於,到底是學習Python還是學C,你需要給自己有一個明確的定位,你要知道通過學習程式語言對你來說達到的預期和實現什麼樣的軟體,心裡都要清楚。然後根據你的預期和要達成的目的來具體情況具體分析的來選擇學習什麼語言。
如果你的目的是方便提高工作效率,實現輕鬆的並且自動化的工作建議你選擇Python來學習。
如果你的目的是自己開發作業系統,甚至自己開發驅動程式和編寫面向Windows客戶端的程式建議你選擇C來學習。
-
9 # 辣椒科技
寫在頭前
首先需要明確一點,程式語言本身只是一種工具,並沒有好壞之分,任何語言在特定的領域和應用場景下都有它的優勢之處,當然也有它的弱項。區別在於,在不同的應用場景,為了達到特定目的時,選擇哪種更適合,更能減少我們的工作量。那麼,對於非程式設計師,Python和C學習哪個好這個問題,個人認為還是需要先明確學習的目的和具體的應用場景,根據自身情況再做進一步判斷。下面我從幾個方面對Python和C進行全面的對比分析,相信讀者在瞭解後一定能根據自身的需求做出合理的判斷。
一、語言特性對比(一)Python
1、語言特點
python的程式編碼非常簡單易讀,它既有傳統程式語言的強大性和通用性,也具備簡單指令碼和解釋語言的易用性,總之就是Python編寫起來很簡單,初學者很容易上手。Python支援高階程式設計特性,支援面向物件程式設計,同時實現了自動記憶體管理,為程式設計者擺脫了記憶體管理帶來的諸多煩惱。Python具有大量的標準庫和模組供開發者靈活呼叫,可以說幾乎你能用到的所有基礎功能都已經有非常牛的人幫你實現了,你只需要站在前人的肩膀上完成自己的工作,這樣可以大大降低你的開發時間和成本。當然以上都是它的一些優勢,它的劣勢也很明顯,主要體現在效能方面,另外應用程式打包、交付以及專案管理困難也一直是使用者比較詬病的地方。2、應用領域
目前,隨著人工智慧、大資料分析等領域的火爆,Python的名氣隨之也是水漲船高,應用領域可以說是非常的廣泛,比如“網路程式設計”、“爬蟲開發”,尤其是現在特別火的“人工智慧”、“雲端計算”、“資料分析”等等,Python都是程式設計工具的不二選擇。對於學習Python,後續主要的發展前景有:Linux運維、Python Web網站工程師、Python自動化測試、資料分析、人工智慧等,以2019年北京為例,Python工程師平均薪資可以達到驚人的22K,可以說是非常高了,當然具體還要看個人能力不同,有很大差異。(二)C語言
1、語言特點
C語言可以說是最著名、應用最廣泛、最有影響力的語言之一,因為windows、Linux作業系統都是它編寫的。C語言簡潔緊湊、靈活方便,支援直接訪問實體地址,對硬體進行操作,生成的程式碼質量和程式的執行效率非常的高,而且具有特別強的可移植性。缺點主要體現在資料封裝上,C語言是不支援面向物件的,在資料安全性上不好;另一方面,C語言的語法限制不太嚴格,不檢查陣列下標越界,安全性較差。相比Python,C語言對計算機基礎理論知識要求更高,更加難以掌握。2、應用領域
由於C語言自身特點,決定它更適合底層開發,可以將效能發揮到最大,例如像系統軟體,編譯器、驅動程式、作業系統核心、嵌入式開發等等。根據某網站樣本資料統計,2019年,同樣北京C語言工程師,平均工資為13350,3-5年工資為¥14910,5-10年工資為¥21760。二、應用廣泛性TIOBE 程式語言社群排行榜是程式語言流行趨勢的一個指標,每月更新,這份排行榜排名基於網際網路上有經驗的程式設計師、課程和第三方廠商的數量。排名使用著名的搜尋引擎(諸如 Google、MSN、Yahoo!、Wikipedia、YouTube 以及 Baidu 等)進行計算。請注意這個排行榜只是反映某個程式語言的熱門程度,並不能說明一門程式語言好不好,或者一門語言所編寫的程式碼數量多少。這個排行榜可以用來考查你的程式設計技能是否與時俱進,也可以在開發新系統時作為一個語言選擇依據。
-
10 # 同學請坐下
Python比較推薦非程式設計師學習
相對c而言,Python更加簡單又實用,基本學會Python日常工作的效率大大提高,因為Python目前存在強大的使用者量,遇到問題不怕諮詢不到,自然網上的教程和知識,經驗分享則較為俱全。
現在Python入行也是可以的,但是程式設計的學習需要持之以恆,勿半途而廢。
-
11 # 二執行緒序猿
我覺得如果你是非程式設計師建議學習python,因為C需要比較難很容易讓人失去興趣,python很容易上手也有豐富的庫和有意思的開源專案可能更直觀的讓你感受到一些樂趣
-
12 # 錢塘都督
非程式設計師就意味著沒有實際的業務驅動,這意味你可能只是想從程式設計中獲取樂趣,或者只是想接觸一下新事物,那麼我建議學python。考慮你是非程式設計師,那麼我假定你大概率使用windows,那麼在win下,python開發環境相比c而言更好搭建而且輕量級,再者python的有趣入門教程更多,容易有繼續學習的樂趣。
-
13 # 青蛙呆跳
1.非程式設計師建議學習python,學習一段時間能很快寫一個指令碼,學c的難度和實用性對非程式設計師比較殘酷。學習完就有結果的成就感會成為你繼續學習的動力。
2.對python的用途可以寫網站,爬蟲,工具指令碼,ai人工智慧,桌面客戶端軟體等,號稱“程式設計502”,啥都可以粘合。
3.人生苦短,酷用python
如果有c語言的基礎,懂資料結構,演算法設計,那就離大牛很近了。
回覆列表
此時一位碼農路過,並留下了自己的見解。
首先,來對比下這兩者語言的差別,如下:
C 屬編譯型語言,Python 屬解釋型語言。C 是弱型別、靜態型別檢查的,Python 是強型別、動態型別檢查的。Python 是原生支援面向物件正規化的語言,C 不是。對於大學生來說,雖然最初學的程式語言基本都是C語言,但個人感覺C語言的學習難度比Python難度要大。 如果你是想成為程式設計師的話,在學習語言之前,可以先想想以後的職業規劃,比較兩種語言主要側重點不一樣。python主要用於資料分析,運維、科學計算,金融分析,訊號分析,影象演算法,數學計算,統計分析,演算法建模,伺服器運維,自動化操作,快速開發理念強,適合快速開發團隊或個人敏捷模式。C語言主要應用在一些作業系統的開發、硬體相關的程式設計等領域。
總歸來說,從語言程度來說的話,Python的入門會比C語言的容易,但是最好還是要結合自己以後的職業規劃來挑選語言比較好。