-
1 # 陳小萌128562099
-
2 # 平章芯事
python是一門膠水語言。
什麼是膠水語言?就是把各種工作臨時整合在一起的語言。就像膠水一樣,臨時用起來十分方便,但作為長久的設施就有些不合適了。
python為什麼是膠水語言?這是他的特徵所決定的。首先,語法簡潔,程式設計工作量少。僅靠這一點就讓python十分流行。流行就讓許多人自發為其開發模組,功能愈發強大。
其次,python雖是動態語言,但卻是徹頭徹尾的面嚮物件語言,這就和現在流行的面向物件方法十分契合,增大了受眾面。
你就該問了:python這麼強大,為什麼不是一個全面的語言,而只是一個膠水語言?當然,他有弱點,正是弱點讓他只能是一個膠水語言。
第一,他是動態語言,動態語言不用定義變數,小程式尤可,大工程就是災難。
第二,由於是動態語言,他的速度慢。若c語言是1,java大約是2或3,那麼python呢?大約是100多。
所以,python的特徵決定了他的工具性質。他簡潔,好用,但是慢。
舉個例子,我曾有幾十萬個圖片需要重新調整大小,我在完全不會python的情況下,靠網上搜索,兩個小時寫出程式,運行了二十分鐘,完成。但我若是用c,那就要用到gdiplus,單寫程式至少兩天,執行可能只要不到五分鐘。你說我應該選哪個?當然,若這個程式長期執行另當別論。
若說靠近硬體,流行的只有asm和c,有些地方c都不行,只能asm上,但asm有就業市場嗎?若說專門的針對硬體的語言,那就應該是forth,可惜已經沒人用了。
學語言應該是針對問題得,而不是為了靠近而靠近,包括python所有計算機語言都是為了解決問題而出現的。
python同樣可以操控硬體,python模組眾多,找不到可以自己寫一個,不要太簡單。
若你想有一門能夠解決問題的語言,python是首選。c雖好,可惜他對網路和資料庫的支援基本沒有,學個一年也寫不出什麼。
-
3 # 小魚兒他老漢
首先,軟硬不分家。
其次,我寫了本書,物聯網全棧開發實踐,正在一校中。其中主要列舉了Python適用的場合和方法。包括VHDL測試,spice模擬,網路模擬,多媒體處理,各類硬體的控制,與java/.net整合,Web,網路堆疊,大資料分析。作為膠水語言,開發速度快。執行速度要看,Cython/PyPy可以實現非常高的速度。
別遲疑,跳下去。
-
4 # 旭日升140077764
根據你的專業,我覺得你應該繼續學C.PYTHON的好處是有很多別人已經寫好的包,框架,可以很容易拿來用,效率非常高.比如,你要爬取某網站的資料,使用別人寫好的包,在網上找些案例,依葫蘆畫瓢,幾天時間就能完成你的工作.
-
5 # 李曉米
如果你想做偏硬體的東西,建議你還是學習C語言吧,組合語言也是需要學習的。就我目前工作,用C語言對於嵌入式方向,也就是是硬體程式設計是比較全面的。對於Python,無可厚非,比如對於當前的樹莓派等等一些硬體程式設計也有,但是不夠全面,如果你開啟python的原始碼,底層封裝的還是c語言。所以建議學習C語言。
-
6 # sixkery
首先明白一點,python偏軟體。如果題主對硬體感興趣建議題主接著學習C語言。
之所以python近年來大火,是因為python有豐富的第三方庫。加上近年來人工智慧,大資料持續火爆。帶動一大批人學習python的熱潮。
但是python是一種動態語言,又稱膠水語言,使用起來靈活,方便,程式碼量少。但是有的時候執行速度慢。
C語言是一種靜態語言,雖然程式碼量大,但是接近彙編。執行速度非常快。
再者C語言是程式設計基礎,相信大多數學習程式設計者都學過C語言。
如果題主單純的對硬體感興趣,推薦題主學習C語言。
語言只是工具,用工具解決問題才是要考慮的問題。
現在大二,學的機械電子,我知道java完全偏軟體,python呢?python偏軟還是硬?我沒有軟體方面的興趣,對硬體挺有興趣的,求大神告知,學python對於我的興趣有幫助嗎?(資料我都準備好了)沒幫助我就在接著學c語言了。
回覆列表
呵呵,當然偏軟體了~目前偏硬體的高階程式語言也就C語言了,然後再底層就是組合語言。而直接用來做硬體程式設計的則是VHDL以及Verilog HDL~
Python與Java一樣,都是解釋型程式語言,所以無法直接訪問硬體底層的東西,比如暫存器、IO等,有些可以透過C語言介面橋接的方式提供給Python使用~