effect of variable

J

Jim S.

I am a total noob when it comes to programming. These last few days, I
am learning ruby thanks to the book, 'beginning ruby, from novice to
professional.' In page 96, chapter 4, developing a basic ruby app, it
showed one other way to code to show number of lines in the file,
'text.txt.' (*see attached file)

text=3D''
line_count =3D 0
File.open("text.txt").each do |line|
line_count +=3D 1
text << line
end
puts "#{line_count} lines"

I do not understand what the variable 'text' is for in the first, and
fifth, lines of the code. The book explained it this way--

"...Compared to your previous attempt, this code introduces the text
variable and adds each line onto the end of it in turn. When the
iteration over the file has finished=E2=80=94that is, when you run out of=

lines=E2=80=94text contains the entire file in a single string ready for =
you to
use."

Since I did not understand what the variable 'text' was for, I removed
it to see if I'll get something different. Removing that variable did
not change anything--I still got the same number of lines.

line_count =3D 0
File.open("text.txt").each do |line|
line_count +=3D 1
end
puts "#{line_count} lines"

Was the 'text' variable placed there in case there was more code to
follow that might use that file? Removing that 'text' variable, I opened
the file text.txt to see if the code somehow changed the file content.
It didn't.

Please enlighten...? Thanks!

Attachments:
http://www.ruby-forum.com/attachment/6132/text2.txt


-- =

Posted via http://www.ruby-forum.com/.=
 
S

Sam Duncan

Put the text variable back in, and try this at the end after the puts
for the line count.

puts text


=]
 
M

Michael Edgar

Was the 'text' variable placed there in case there was more code to
follow that might use that file? Removing that 'text' variable, I opened
the file text.txt to see if the code somehow changed the file content.
It didn't.


Yep - that was there in case you wanted to use the actual text of the
file in some way, such as searching it for a word, counting characters, etc.

I hope you enjoy Ruby!

Michael Edgar
(e-mail address removed)
http://carboni.ca/
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top