Ruby类和def

时间:2013-09-18 22:38:50

标签: python ruby

我今天开始学习Ruby,来自Python。

我有一些我想在Ruby中使用的Python示例:

def id():
    return random.randrange(10**15,10**16)

class test:
    def __init__(self):
        self.id = id()

在Ruby中,我一直试图以一种非常奇怪的方式做到这一点:

def id()
    puts rand(10**15)+rand(10**16)
end
class test
      def initialize(name=nil,password=nil)
          @id =id()
      end
end

我觉得我这样做是完全错误的,所以建议将不胜感激。

1 个答案:

答案 0 :(得分:1)

puts相当于Python的print,而不是return。 Ruby也使用return。此外,您需要一致的命名如果您想要致电id,则需要定义id,而不是Id。所以这将是正确的代码:

def id()
    return rand(10**15)+rand(10**16)
end
class test
      def initialize(name=nil,password=nil)
          @id = id()
      end
end