Computer >> 컴퓨터 >  >> 프로그램 작성 >> Ruby

Put, Print, P의 차이점 이해하기

Ruby에서 인쇄하는 방법에는 여러 가지가 있습니다.

가장 유용한 정보 :

  • 넣다
  • 인쇄
  • p

하지만 어떻게 다른가요?

그리고 언제 둘 중 하나를 사용해야 하는지 ?

이것이 이 기사에서 배우게 될 내용입니다!

줄 바꿈 없이 인쇄하는 방법

사용자가 볼 수 있도록 화면에 무언가를 인쇄하려면 일반적으로 puts를 사용합니다. .

좋아요 :

puts "Hello there!"

Puts는 사용할 때마다 메시지 끝에 자동으로 새 줄을 추가합니다.

줄 바꿈을 원하지 않으면 print를 사용하세요. .

:

print 123

다음에 print할 때 마지막 메시지와 같은 줄에 있을 것입니다.

:

print 123
print 456
print 789

123456789

하지만 풋을 사용하는 경우 :

puts 123
puts 456
puts 789

123
456
789

모든 메시지에는 고유한 줄이 있습니다!

또한 Put은 배열을 다른 방식으로 처리합니다.

:

puts [1,2]
1
2

print [1,2]
[1,2]

또 다른 차이점이 있습니다. :

모든 것을 문자열로 변환하려고 시도합니다(to_s를 호출하여 ).

그게 왜 중요한가요?

왜냐하면 puts 값이 0인 배열...

일부 공백 줄이 표시됩니다!

:

puts [1,nil,nil,2]
1


2

요약하자면, puts &print :

  • 빈 문자열을 의미하더라도 문자열로 변환

puts만 :

  • 메시지 끝에 새 줄 추가
  • 배열 요소를 한 줄에 하나씩 표시

P로 디버그 출력

풋 대 p는 어떻습니까?

p 개체의 "원시" 버전을 표시하는 방법입니다.

예를 들어 :

> puts "Ruby Is Cool"
Ruby Is Cool

> p "Ruby Is Cool"
"Ruby Is Cool"

p란? 유용한가요?

디버깅 중입니다.

(일반적으로 보이지 않는) 개행 문자와 같은 것을 찾거나 일부 값이 올바른지 확인하려면 p를 사용합니다. .

또 다른 차이점 :

  • put은 항상 nil을 반환합니다.
  • p는 전달한 객체를 반환합니다.

이것은 좀 더 기술적인 차이입니다...

하지만 puts을 시도하면 나타날 수 있습니다. 변수를 메서드의 마지막 줄로 지정하고 해당 메서드의 반환 값을 사용하고 있습니다.

:

def numbers
  puts 123
end

numbers
# nil

이 예에서 numbers 메서드는 화면에 123을 표시하지만 반환 값은 nil입니다. .

노력하면 :

result = numbers

그런 다음 result nil이 됩니다. , 123 대신.

그러나 p를 사용하는 경우 그러면 작동합니다.

예쁜 인쇄

Ruby에는 또 다른 인쇄 방법이 있습니다.

pp라고 함 .

이것은 p와 같습니다. , 하지만 더 좋은 방식으로 큰 해시 및 배열을 인쇄합니다.

이전 버전의 Ruby(2.4 이전)는 require 'pp'를 수행해야 합니다. 이 방법에 액세스할 수 있습니다.

동영상 튜토리얼

요약

Ruby에서 put, print, p의 차이점에 대해 배웠습니다!

Put, Print, P의 차이점 이해하기

이제 연습 시간입니다. .

새로운 것을 즉시 연습한다면 이 정보를 지식 기반에 통합하게 될 것이고, 연습하지 않으면 잊어버리고 발전하지 못할 것입니다.