[Thảo Luận] Cho hỏi về Ruby

2»

Comments

  • slucis7593slucis7593 Posts: 544Registered
    Dir, entries ở đâu vậy bạn? ở cái web hướng dẫn bạn post hả?
    Nếu có cấu trúc Dir.entries thì có vẻ như Dir là object còn entries là hàm (method) hoặc thuộc tính (attr_accessor, attr_reader, attr_writer) gì đó của object Dir.
  • kirby3012kirby3012 Posts: 27Registered
    Đúng rồi. Ở cái web hướng dẫn.
    Lúc ghi Dir.entries "/" thì nó sẽ cho ra [".", "..", "Home", "Libraries", "MouseHole", "Programs", "Tutorials", "comics.txt"]
    cho nên mình thực sự không hiểu rõ công dụng của nó cho lắm.
  • slucis7593slucis7593 Posts: 544Registered
    Nghe có vẻ như Dir là 1 cái array, còn entries là hàm liệt kê toàn bộ phần tử của nó vậy. :D
  • pitagopitago Posts: 8Registered
    kirby3012 wrote:
    Đúng rồi. Ở cái web hướng dẫn.
    Lúc ghi Dir.entries "/" thì nó sẽ cho ra [".", "..", "Home", "Libraries", "MouseHole", "Programs", "Tutorials", "comics.txt"]
    cho nên mình thực sự không hiểu rõ công dụng của nó cho lắm.

    Dir là 1 class, entries là class function của Dir. Dir.entries( directory ) sẽ trả về mảng chứa tên của các file có trong directory đó.

    Chú ý ở đây có 2 file đặc biệt là "." và "..". "." là file trỏ đến directory, còn ".." là parent directory của directory trên. Thư mục cũng được tính là 1 file, chỉ có điều nó là file đặc biệt chứa các con trỏ trỏ đến các file mà nó chứa.
  • VistrifaVistrifa Posts: 87Registered
    khiếp rối cả mắt :)
  • NagiNagi Posts: 589Registered
    Vistrifa wrote:
    khiếp rối cả mắt :)
    Đang đú RGSS3 thử mà mấy thím này táng một đống loạn hết luôn.
  • kirby3012kirby3012 Posts: 27Registered
    Dir là 1 class, entries là class function của Dir. Dir.entries( directory ) sẽ trả về mảng chứa tên của các file có trong directory đó.
    Chú ý ở đây có 2 file đặc biệt là "." và "..". "." là file trỏ đến directory, còn ".." là parent directory của directory trên. Thư mục cũng được tính là 1 file, chỉ có điều nó là file đặc biệt chứa các con trỏ trỏ đến các file mà nó chứa.
    Vậy cho mình hỏi file trỏ, parent directory và directory là gì?
  • NagiNagi Posts: 589Registered
    Các thím cứ bàn luận thoải mái, mai ngồi đọc lại từ trang 1 sau để thu thêm kiến thức. :sacsua:
  • Focker_cFocker_c Posts: 1,577Registered
    slucis7593 wrote:
    Bạn có biết hash là gì không?
    Có thì bạn xem code luôn, nếu không mình nói qua nhé.
    Nó giống như 1 cái từ điển có cấu trúc như sau:
    books[key] = value
    
    - books là tên hash
    - key là khóa
    - value là giá trị
    Nhìn cũng khá là giống 1 cái mảng (array) nhỉ, key giống như index(chỉ số 1, 2, 3....) của array vậy, nhưng key ở đây không phải chỉ có thể là số mà có thể là string hay 1 số kiểu khác, value cũng
    vậy. Giống như là nhóm 2 thằng thành 1 cặp thôi, biết thằng này thì biết ngay thằng còn lại là gì. :D
    Còn đây mình xin giải thích cái code:
    books = {} # khai báo 1 cái hash rỗng
    books["Gravity's Rainbow"] = :spendid # định nghĩa 1 cái key có kiểu string = "Gravity's Rainbow" & value = :spendid
    books["A horror in normal life"] = :disastrous # tương tự key = "A horror in normal life" & value = :disastrous
    ratings = Hash.new(0) # giống như trên cũng khai báo 1 cái hash rỗng, nhưng cái này gọi hàm initialize (hàm khởi tạo) của hash và truyền tham số 0 cho hàm
    books.values.each { |rate| ratings[rate] += 1 } 
    # Tạo vòng lặp duyệt qua tất cả các value của books (cụ thể ở đây, như ở trên định nghĩa là có 2 cái gồm :spendid và :disastrous) 
    # Bây giờ thì dùng value của books làm key cho cái hash ratings
    # += 1 ở đây thì value của 2 cái key vừa định nghĩa = 1, bạn có thể thay thế += 1 bằng '= 4', '= "Hello"' hay gì đó tùy bạn.
    


    Thì ra là để đặt biến array . Cái này lang nào chả có :)
  • kirby3012kirby3012 Posts: 27Registered
    Có cái mới rồi đây
    File.open(­"/Home/com­ics.txt", "a") do |f|
    ..	f << "Cat and Girl:­ http:­//catandgi­rl.com/"
    end
    
    Ở đây có nghĩa là mở File comics.txt rồi làm thêm hành động |f|
    với f là "Cat and Girl:­ http:­//catandgi­rl.com/"
    Vậy cái "a" để làm gì ?
    Ngoài ra, những cái | something here| có nghĩa là sao
    Và làm sao để biết khi nào sử dụng () và [] ?
Sign In or Register to comment.