我目前跳到Ruby培訓,我有一些基本的Python知識,我希望可以幫助我,但我不清楚Ruby的'for'循環如何工作,我的感覺是,他們的工作方式與蟒蛇。Ruby的for循環如何工作(與Python相比)?
一個例子可能是以下Python代碼:
print('Interest Calculator: ')
sumnum = eval(input('Enter your initial sum: '))
initnum = sumnum
rate = eval(input('Enter your interest rate: '))
noy = eval(input('Enter the number of years to calculate your interest for: '))
for i in range(noy):
sumnum = initnum * (1 + rate)
print('The value of your initial investment of £%s' %initnum, 'over the course of', noy, 'years is £%s' %sumnum)
將會產生如下(我把隨機號碼):
Interest Calculator:
Enter your initial sum: 250
Enter your interest rate: 3
Enter the number of years to calculate your interest for: 7
The value of your initial investment of £250 over the course of 7 years is £1000
什麼將一個Ruby等價的for循環這裏是?
我試圖做到這一點,像這樣:
puts 'Interest Calculator: '
puts 'Enter your initial sum: '
sumnum = gets
initsum = sumnum
puts 'Enter your interest rate: '
rate = gets
puts 'Enter number of years for your interest: '
noy = gets
for i in noy do
sumnum = initsum * (1 + rate)
end
puts "The value of your investment of £#{initsum} over the course of #{noy} years is £#{sumnum}"
然而,這產生以下錯誤:
Interest Calculator:
Enter your initial sum:
250
Enter your interest rate:
3
Enter number of years for your interest:
7
~/RubymineProjects/ExploreRuby/InterestRate.rb:9:in `<top (required)>': undefined method `each' for "7\n":String (NoMethodError)
from -e:1:in `load'
from -e:1:in `<main>'
Process finished with exit code 1
任何幫助深表感謝。
+1良好的抓... –