Time of Update: 2017-02-28
本文給大家分享的是通過ruby擷取github上的hosts檔案內容,修改到本地Ubuntu中,十分的實用,具體你懂得,有需要的小夥伴可以參考下。 在Windows下面,我們修改hosts檔案都知道在哪裡,但是在ubuntu系統中呢,還有其它的系統,比如安卓手機,或許就沒那麼多的小軟體可供你簡單的修改了,我們自己來寫個吧 ? 1 2 3 4
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby的25個編程細節(技巧、實用程式碼片段),本文直接給出主題和相應代碼,需要的朋友可以參考下 1.try 永遠不會拋出異常 在 沒有的時候 返回 nil 代碼如下: province_id = Province.find_by_name(prov).try(:id) 2.find(:first, :condotions) 方法 不言而與 代碼如下: mobile_info = MobileInfo.find(:first,
Time of Update: 2017-02-28
這篇文章主要介紹了ruby中的迴圈語句總結,本文總結了Ruby中常用的一些迴圈文法,需要的朋友可以參考下 while(當…) 迴圈 while 條件 語句1; 語句2 ; 語句… end
Time of Update: 2017-02-28
這篇文章主要介紹了幾個Ruby小技巧分享,本文講解了代碼塊的序列調用、主要是說array在block中的使用、Hash#fetch、建立程式碼片段的散列等小技巧,需要的朋友可以參考下 代碼塊的序列調用 代碼如下: def touch_down yield [3, 7] puts "touchdown!" end touch_down do |(first_down, second_down)| puts "#{first_down}
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby最佳化繼承類執行個體,本文直接給出一個最佳化執行個體及實現代碼,需要的朋友可以參考下 在Rails的原則裡有簡化Controller,豐富Model的說法。下面將用一個樣本展示一個簡單的繼承最佳化。特別是你的method裡有一個寫變化的self變數的時候。 假設我們有如下的Model 代碼如下: class SubjectMatterExpert < User include HashCodeCreatorModule def
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby熱門檔案操作方法,本文講解了建立檔案、讀取檔案、刪除、重新命名檔案、目錄操作等熱門檔案操作方法,需要的朋友可以參考下 一、建立檔案 代碼如下: f=File.new(File.join("C:","Test.txt"), "w+") f.puts("I am Jack") f.puts("Hello
Time of Update: 2017-02-28
這篇文章主要介紹了收集的多個ruby遍曆檔案夾代碼執行個體,本文總結了4個程式碼片段,小編推薦最後一個方法,因為它很簡潔優雅,需要的朋友可以參考下 一、遍曆檔案夾下所有檔案,輸出檔案名 代碼如下: def traverse_dir(file_path) if File.directory? file_path Dir.foreach(file_path) do |file| if file !="." and file
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby實現的3種快速排序演算法,本文給出了快速排序的普通版本、快速排序的隨機化版本、快速排序的利用了Ruby的文法糖的隨機化版本三個版本,需要的朋友可以參考下 剛學Ruby,正巧演算法老師鼓勵用不熟悉的語言來寫演算法,我就用Ruby吧~~ 話說Ruby可真是超厲害,好多憑直覺的方法都可以用。。。。。無限膜拜中。。。。 期間我遇到了invalid multibyte char (US-ASCII)的錯誤,解決辦法是在開頭加一個#encoding:utf-8
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby實現的最優二叉尋找樹演算法,本文直接給出實現代碼,需要的朋友可以參考下 演算法導論上的偽碼改寫而成,加上導論的課後練習第一題的解的建構函式。 代碼如下: #encoding: utf-8 =begin author: xu jin date: Nov 11, 2012 Optimal Binary Search Tree to find by using EditDistance algorithm refer to <>
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby實現的最長公用子序列演算法,本文直接給出實現代碼,需要的朋友可以參考下 最長公用子序列,LCS,動態規劃實現。 ? 1 2 3 4 5 6 7 8 9 10 11
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby實現的矩陣連乘演算法,本文直接給出實現代碼,需要的朋友可以參考下 動態規劃解決矩陣連乘問題,隨機產生矩陣序列,輸出形如((A1(A2A3))(A4A5))的結果。 代碼: ? 1 2 3 4 5 6 7 8
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby實現的各種排序演算法,本文給出了Bubble sort、Insertion sort、Selection sort、Shell sort等排序的實現方法,需要的朋友可以參考下 時間複雜度:Θ(n^2) Bubble sort 代碼如下: def bubble_sort(a) (a.size-2).downto(0) do |i| (0..i).each do |j| a[j], a[j+1] = a[j+1], a[j]
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby實現生產者和消費者代碼分享,本文直接給出實現代碼,需要的朋友可以參考下 ? 1 2 3 4 5 6 7 8 9 10 11 12
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby中require、load、include、extend的區別介紹,require、load用於檔案,如.rb等等結尾的檔案,include、load則用於包含一個檔案中的模組,需要的朋友可以參考下 require,load用於檔案,如.rb等等結尾的檔案。include,load則用於包含一個檔案中的模組。 require
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby中proc和lambda的兩個區別,本文講解了在proc和lambda中,return關鍵字有不同含義、檢查參數的方式不同兩個重要區別,需要的朋友可以參考下 1、在proc和lambda中,return關鍵字有不同含義: 在proc中,return僅僅表示從這個lambda中返回. 在lambda中,return不是從proc中返回,而是從定義proc的範圍中返回. 代碼如下: def one_method p =
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby定義私人方法(private)的兩種辦法,本文直接給出代碼執行個體,需要的朋友可以參考下 ? 1 2 3 4 5 6 7 8 9 10 11 1
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby中類變數和執行個體變數的比較,本文講解了4點類變數和執行個體變數的不同之處,並給出了代碼執行個體,需要的朋友可以參考下 1、類變數名以@@開始,一個類變數被這個類所有的執行個體對象共用;執行個體變數名以@開始,每個執行個體對象有各自不同的執行個體變數; 2、類變數在使用前必須初始化,否則在使用時會報錯;而執行個體變數如果沒有初始化,則使用時返回nil; 3、類變數是私人的,在類外無法直接存取,可以通過類方法和執行個體方法訪問; 複製代碼
Time of Update: 2017-02-28
這篇文章主要介紹了Ruby中的Regex,是Ruby學習進階當中的重要知識,需要的朋友可以參考下 Regex是一個特殊的字元序列可以協助匹配或者找到其他字串或串套,使用的模式保持一個專門的文法。 Regex文本是一個模式之間的斜線之間或任意分隔字元 %r 如下: 文法: 複製代碼 代碼如下: /pattern/ /pattern/im # option can be specified %r!/usr/local! # general delimited
Time of Update: 2017-02-28
這篇文章主要介紹了用Ruby進行CGI編程的入門指引,編寫CGI指令碼也是Ruby用於網路編程的一項基礎功能,需要的朋友可以參考下 編寫CGI指令碼: 最基本的Ruby CGI指令碼看起來像這樣: ? 1 2 3 4 5 #!
Time of Update: 2017-02-28
這篇文章主要介紹了在Ruby中利用Net::SMTP類寄送電子郵件的教程,包括類中所帶方法的用法介紹,需要的朋友可以參考下 簡易郵件傳輸通訊協定(SMTP)寄送電子郵件及路由的e-mail郵件伺服器之間的協議處理。 Ruby 提供 Net::SMTP 類的簡易郵件傳輸通訊協定(SMTP)用戶端的串連,並提供了兩個新的方法:new 和 start. new 帶兩個參數: server name 預設為 localhost port number 預設為熟知的