網(wǎng)站首頁 編程語言 正文
一:前言
剛看了一篇軟文,說什么“才華是改變?nèi)松钣行У耐緩健保凑兀篌w就是科技進步,要想一直在車上,就得不斷的學習,剛好最近也準備學習Golang,最近火的不能在火了吧,剛好也有些Python基礎,所以就想在學習Golang的同時,對比著Python,查漏補缺下Python的知識,我終相信語言是相同的,只是個別語法不一樣,翻看以前寫的Python筆記,現(xiàn)在回過頭看看,挺潦草的哈,所以也準備借這個機會,把Python的筆記該重構的重構,該補充的補充,同時記錄下Golang的學習歷程。
二:特點
1.Python
①解釋型語言
程序不需要在運行前編譯,在運行程序的時候才翻譯,專門的解釋器負責在每個語句執(zhí)行的時候解釋程序代碼。這樣解釋型語言每執(zhí)行一次就要翻譯一次,效率比較低。
②動態(tài)數(shù)據(jù)類型
支持重載運算符,也支持泛型設計。(運算符重載,就是對已有的運算符重新進行定義,賦予其另一種功能,以適應不同的數(shù)據(jù)類型。泛型設計就是定義的時候不需要指定類型,在客戶端使用的時候再去指定類型)
③完全面向對象的語言
函數(shù),模塊,數(shù)字,字符串都是對象,在Python中,一切接對象
完全支持繼承,重載,多重繼承
④擁有強大的標準庫
Python語言的核心只包含數(shù)字,字符串,列表,元祖,字典,集合,文件等常見類型和函數(shù),而由Python標準庫提供了系統(tǒng)管理,網(wǎng)絡通信,文本處理,數(shù)據(jù)庫接口,圖形系統(tǒng),XML處理等額外的功能。
⑤社區(qū)提供了大量第三方庫
Python 社區(qū)提供了大量的第三方模塊,使用方式與標準庫類似。它們的功能覆蓋 科學計算、人工智能、機器學習、Web 開發(fā)、數(shù)據(jù)庫接口、圖形系統(tǒng) 多個領域。
2.Golang
①靜態(tài)強類型、編譯型、并發(fā)型
靜態(tài)類型語言,但是有動態(tài)語言的感覺。(靜態(tài)類型的語言就是可以在編譯的時候檢查出來隱藏的大多數(shù)問題,動態(tài)語言的感覺就是有很多的包可以使用,寫起來的效率很高)
可直接編譯成機器碼,不依賴其他庫,glibc的版本有一定要求,部署就是扔一個文件上去就完成了。
語言層面支持并發(fā),這個就是Go最大的特色,天生的支持并發(fā)。Go就是基因里面支持的并發(fā),可以充分的利用多核,很容易的使用并發(fā)。
②垃圾回收機制
內(nèi)置runtime,支持垃圾回收,這屬于動態(tài)語言的特性之一吧,雖然目前來說GC(內(nèi)存垃圾回收機制)不算完美,但是足以應付我們所能遇到的大多數(shù)情況,特別是Go1.1之后的GC。
③支持面向對象編程
有接口類型和實現(xiàn)類型的概念,但是用嵌入替代了繼承。
④豐富的標準庫
Go目前已經(jīng)內(nèi)置了大量的庫,特別是網(wǎng)絡庫非常強大。
⑤內(nèi)嵌C支持
Go里面也可以直接包含C代碼,利用現(xiàn)有的豐富的C庫
三:應用
1.Python
①網(wǎng)絡編程
web應用,網(wǎng)絡爬蟲
②數(shù)據(jù)分析和機器學習
③自動化測試
④自動化運維
2.Golang
①服務器編程
處理日志、數(shù)據(jù)打包、虛擬機處理、文件系統(tǒng)等。
②分布式系統(tǒng),數(shù)據(jù)庫代理器等
③網(wǎng)絡編程
這一塊目前應用最廣,包括Web應用、API應用、下載應用。
④內(nèi)存數(shù)據(jù)庫
如google開發(fā)的groupcache,couchbase的部分組建。
原文鏈接:https://www.cnblogs.com/huiyichanmian/p/11259000.html
相關推薦
- 2022-07-02 jquery實現(xiàn)無縫輪播圖_jquery
- 2023-07-02 Pandas數(shù)據(jù)查詢的集中實現(xiàn)方法_python
- 2022-03-19 linux修改文件所屬用戶和組的實例方法_Linux
- 2023-01-14 python與matlab一些常用函數(shù)互轉問題_python
- 2022-06-26 Python基礎必備之語法結構詳解_python
- 2024-07-15 Spring中的單例模式應用詳解
- 2021-11-04 詳解C++中的const和constexpr_C 語言
- 2023-06-18 Redis優(yōu)雅地實現(xiàn)延遲隊列的方法分享_Redis
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結構-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支