日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Ruby和Python的語法比較

其實(shí)Ruby和Python非常接近,比大多數(shù)別的語言要接近的多,所以喜歡用啥就用啥(大實(shí)話,雖然也是廢話)。語法上的差別雖然有那么一點(diǎn),大部分是syntax sugar,我斗膽稍微列幾個(gè)(python我也忘得差不多了,不對的大家盡管來鞭尸吧),但是主要差異還是設(shè)計(jì)思想上的:靈活vs明確. 我不認(rèn)為兩者在生產(chǎn)力上會(huì)有什么差別,如果你熟悉的話。*注意,僅限語言本身的比較。

十多年的蔚縣網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)整合營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整蔚縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)從事“蔚縣網(wǎng)站設(shè)計(jì)”,“蔚縣網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

編輯推薦:Ruby入門教程與技巧大全

Ruby和Python的比較列表

1. ruby的case可以匹配很多東西:范圍/數(shù)組,對象,正則表達(dá),python沒有case/switch而使用if/else比較死板點(diǎn)

2. python的縮進(jìn)很漂亮,雖然有時(shí)會(huì)造成些許麻煩。ruby的end蠻難看的,所以大家都被逼當(dāng)one liner(玩笑)

3. 感覺上ruby比python更OO,當(dāng)然這也可能是因?yàn)閜ython不提倡用那些改變對象內(nèi)部構(gòu)造的‘伎倆’造成的錯(cuò)覺

4. python有l(wèi)ist comprehension, ruby沒有:(

5. python有真正的keyword argument, ruby用hash模擬,當(dāng)然實(shí)際用起來沒什么差別

6. python的self很討厭,ruby沒有那種繁瑣的東西

7. reflection,ruby內(nèi)置了很多方法,比如object.methods,而python把這些信息存在特殊的字典里。差不多

8. ruby的block功能很強(qiáng),python的lambda只能返回單一值

9. ruby的open class已經(jīng)聲明遠(yuǎn)播,可以玩出2.days.ago這樣的花樣,python好像沒法直接修改內(nèi)置類也反對這么做。

10. python需要用@classmethod修飾聲明類方法,ruby是內(nèi)建

11. ruby有單子方法,也就對對象單獨(dú)定制,python不知道有沒有類似概念

12. ruby有method_missing機(jī)制,python可以使用__getattr__截獲未定義方法(from qiezi)

13. ruby使用單繼承+mixin,python使用多重繼承,不過python也有mixin

14. ruby有attr_*系列語法helper,省卻自己寫一堆setter/getter, python的property方法還是得自己寫setter/getter

15. ruby和python都使用duck typing,不過python也有一套顯式的interface機(jī)制(從zope3并入內(nèi)核了么?)

16. ruby的函數(shù)調(diào)用括號(hào)是可省的,稍微少敲幾下鍵盤。python默認(rèn)沒括號(hào)也不帶參數(shù)的話返回函數(shù)本身的一個(gè)引用。

17. 我不清楚python的meta programming能到什么程度,只好等大牛來說說了。只是覺得pythoner不常用那個(gè),也許覺得會(huì)把程序邏輯搞得晦澀不明。

18. ruby從perl繼承了一部分難看的東西,比如很多預(yù)定義的$x常量

19. ruby內(nèi)建正則表達(dá),方便一點(diǎn)

20. ruby的yield是用來call block的。而python的yield是用來給generator輸入輸出值的。

21. python的庫給我感覺命名規(guī)范有點(diǎn)不統(tǒng)一,有些方法用snake_case有些則用CamelCase,也許是庫太多了遺留下的歷史問題

22. python的三引號(hào)很漂亮,ruby的<<-XX...XX太難看了,也可以用%q{...}包裹多行文字(from qiezi)

23. ruby的類庫設(shè)計(jì)中喜歡給方法添加別名,方便記憶。

另: ruby官方網(wǎng)站也提供了一些Ruby和Python基本的比較。


文章題目:Ruby和Python的語法比較
本文地址:http://www.dlmjj.cn/article/djedhso.html