從Python到Ruby(翻譯)

來源:互聯網
上載者:User

Python是一門非常優秀的語言,從Python遷移到Ruby,你將發現一些文法上的不同。

 

相似點

 

和Python一樣,在Ruby中,...

  • 有一個互動提示 (叫做 irb).

  • 你可以在命令列中讀取文檔 (通過ri 命令來替代
    pydoc).

  • 沒有特殊的結束一行的符號 (新行除外).

  • 文字可以用多行,就像Python中的三個引號.

  • List用[],Dict用{} (Dict在Ruby中叫“hashes”).

  • Arrays的工作方式相同(2個Array相加成為一個更加長的Array,但是想這樣a3 = [ a1, a2 ] 合并,將產生一個包含數組的數組).

  • Objects是有固定類型和動態轉換的.

  • 一切都是object,變數名只是一個指向Object的指標.

  • 雖然關鍵字不同, 但是exceptions的工作方式不變.

  • 你擁有嵌入文檔的工具
    (在Ruby中叫做rdoc).

 

不同點

 

與Python不同, 在Ruby中,...

  • Strings是可以改變的。

  • 你可以使用常量(常量的值是不同改變的)。

  • 這裡有些強制規定的書寫要求 (例如:class的名字以大寫字母開頭, 變數名已小寫字母開頭)。

  • 這裡只有一種容器(Array),
    並且是可以改變的。

  • 引號中的String限制不同。

  • 這裡沒有新風格的Class,Class只有一種風格。

  • 你無法直接存取屬性,在Ruby中,都是通過方法調用實現的。

  • 在方法調用中使用(),是一種可選的策略。

  • 這裡用private等等限制訪問的關鍵字,來替代Python中的名字隱藏。

  • “mixin’s”用來替代多繼承。

  • 你可以在任何時候修改已有的Class,並添加新的方法。

  • 用true和false來替代True和False
    (用nil來替代None)。

  • 在判斷真值的時候,只有false和nil會被認為是假.其他所有的都認為是真(包括0, 0.0, "",和[])。

  • 用elsif替代elif.

  • 用require替代import. 但是用法是相同的。

  • 用usual-style來注釋文檔(替代docstrings) 同時用來產生文檔。

 

 

原文地址:

http://www.ruby-lang.org/zh_CN/documentation/ruby-from-other-languages/to-ruby-from-python/

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.