主頁(yè) > 知識(shí)庫(kù) > Ruby中區(qū)分運(yùn)行來(lái)源的方法

Ruby中區(qū)分運(yùn)行來(lái)源的方法

熱門標(biāo)簽:常德電銷平臺(tái)外呼系統(tǒng)軟件價(jià)格 百度地圖標(biāo)注自定義圖片 徐州網(wǎng)絡(luò)外呼系統(tǒng)哪個(gè)好 白銀外呼paas系統(tǒng) 地圖標(biāo)注賺錢項(xiàng)目注冊(cè) 電銷機(jī)器人廠商代理 滴滴外呼系統(tǒng) 湖州u友防封電銷卡 高德地圖標(biāo)注客服

當(dāng)我們?cè)趯懩K的時(shí)候,或多或少需要直接運(yùn)行這個(gè)文件也可以執(zhí)行一些方法,但是這樣對(duì)于當(dāng)這個(gè)模塊被require或者include時(shí),顯得不好,在ruby里,有沒(méi)有區(qū)分運(yùn)行來(lái)自當(dāng)前文件,還是被require的目標(biāo)文件調(diào)用呢?

Python可以

比如像Python這樣

復(fù)制代碼 代碼如下:

if __name__ == '__main__':
    print "from direct running"

Ruby當(dāng)然也可以

對(duì)于處處為程序員著想,擁有快樂(lè)編程理念的Ruby來(lái)說(shuō)當(dāng)然是可以區(qū)別的。其原理就是判斷啟動(dòng)文件是否為模塊的代碼文件。

復(fù)制代碼 代碼如下:

if __FILE__ == $0
    puts 'called from direct running'
end

舉個(gè)例子

工具類模塊utils.rb

復(fù)制代碼 代碼如下:

module Utils
    class StringUtils
        def self.test
            puts "test method myfile=" + __FILE__ + ';load from ' +  $0
        end
    end
end

if __FILE__ == $0
    puts 'called from direct running'
    Utils::StringUtils.test()
end

直接運(yùn)行,結(jié)果,if條件成立,執(zhí)行了輸出

復(fù)制代碼 代碼如下:

20:04:37-androidyue~/rubydir/test$ ruby utils.rb
called from direct running
test method myfile=utils.rb;load from utils.rb

引用Utils的類test.rb

復(fù)制代碼 代碼如下:

require './utils'
Utils::StringUtils.test()

運(yùn)行結(jié)果,引入模塊的條件不成立,沒(méi)有輸出called from direct running

復(fù)制代碼 代碼如下:

20:08:07-androidyue~/rubydir/test$ ruby test.rb
test method myfile=/home/androidyue/rubydir/test/utils.rb;load from test.rb

您可能感興趣的文章:
  • windows和linux下Ruby的下載與安裝
  • ruby安裝gem包失敗的通用解決方法
  • Windows下Ruby on Rails開(kāi)發(fā)環(huán)境安裝配置圖文教程
  • 快速正確的安裝 Ruby, Rails 運(yùn)行環(huán)境
  • 更改RubyGem安裝源
  • win7安裝ruby on rails開(kāi)發(fā)環(huán)境
  • CentOS 6.3下編譯安裝Ruby 2.0筆記
  • Ruby中檢測(cè)Gem是否安裝的方法
  • Windows下ruby語(yǔ)言安裝教程
  • Ruby的安裝與運(yùn)行

標(biāo)簽:三沙 普洱 張家界 梧州 遼寧 荊門 永州 公主嶺

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Ruby中區(qū)分運(yùn)行來(lái)源的方法》,本文關(guān)鍵詞  Ruby,中,區(qū)分,運(yùn)行,來(lái)源,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Ruby中區(qū)分運(yùn)行來(lái)源的方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Ruby中區(qū)分運(yùn)行來(lái)源的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章