반응형

Ruby 6

루비: 루비의 라운딩 플로트

루비: 루비의 라운딩 플로트 라운딩에 문제가 있어요.저는 소수점의 100분의 1로 반올림하고 싶은 부유물을 가지고 있습니다.하지만, 나는 오직 사용할 수 있습니다..round그것은 기본적으로 그것을 int, 즉 의미로 바꿉니다.2.34.round # => 2.다음과 같은 것을 할 수 있는 간단한 효과적인 방법이 있습니까?2.3465 # => 2.35반올림할 소수 자릿수를 포함하는 반올림으로 인수 전달 >> 2.3465.round => 2 >> 2.3465.round(2) => 2.35 >> 2.3465.round(3) => 2.347 표시할 때 사용할 수 있습니다(예: >> '%.2f' % 2.3465 => "2.35" 동그랗게 저장하고 싶다면, >> (2.3465*100).round / 100.0 =>..

programing 2023.07.14

해시에서 키와 값을 교환하는 방법

해시에서 키와 값을 교환하는 방법 해시에서 키와 값을 교환하려면 어떻게 해야 합니까? 해시가 다음과 같습니다. {:a=>:one, :b=>:two, :c=>:three} 내가 변화시키고 싶은 것: {:one=>:a, :two=>:b, :three=>:c} 사용.map다소 지루해 보입니다.더 짧은 해결책이 있습니까?Ruby는 Hash에 대한 도우미 방법을 사용하여 Hash를 반전된 것처럼 처리할 수 있습니다(기본적으로 값을 통해 키에 액세스할 수 있음). {a: 1, b: 2, c: 3}.key(1) => :a 반전 해시를 유지하려면 대부분의 상황에서 Hash#invert가 작동해야 합니다. {a: 1, b: 2, c: 3}.invert => {1=>:a, 2=>:b, 3=>:c} 그렇지만..... 값이 ..

programing 2023.06.19

왜 Ruby는 i++ 또는 i--(증분/감분 연산자)를 지원하지 않습니까?

왜 Ruby는 i++ 또는 i--(증분/감분 연산자)를 지원하지 않습니까? 증분/ 연산자사사/감후증연/소산자분전▁(감(연자사++그리고.--)는 상당히 표준적인 프로그래밍 언어 구문입니다(적어도 절차 및 객체 지향 언어의 경우). 왜 루비는 그들을 지원하지 않습니까?저는 당신이 같은 일을 할 수 있다는 것을 압니다.+=그리고.-=하지만 그런 것을 배제하는 것은 이상하게 자의적으로 보입니다. 특히 간결하고 관습적이기 때문입니다. 예: i = 0 #=> 0 i += 1 #=> 1 i #=> 1 i++ #=> expect 2, but as far as I can tell, #=> irb ignores the second + and waits for a second number to add to i 는 이해합니다..

programing 2023.06.09

레일즈에서 플럭과 수집의 차이점은 무엇입니까?

레일즈에서 플럭과 수집의 차이점은 무엇입니까? 여기 두 개의 샘플 코드가 있습니다. 첫 번째는collect: User.first.gifts.collect(&:id) 두 번째는 다음과 함께.pluck: User.first.gifts.pluck(:id) 그들 사이에 성능이나 다른 점에서 차이가 있습니까?pluckDB 레벨에 있습니다.특정 필드만 쿼리합니다.이거 보세요. 다음 작업을 수행할 때: User.first.gifts.collect(&:id) 모든 필드가 로드된 개체가 있으면 다음과 같은 정보를 얻을 수 있습니다.idEnumerable을 기반으로 한 방법 덕분입니다. 그래서: 만약 당신이 필요하다면.id레일 4와 함께, 사용ids:User.first.gifts.ids 레일 4의 일부 필드만 필요한 경우..

programing 2023.06.04

루비에서 배열의 교차점, 결합 및 하위 집합을 어떻게 얻을 수 있습니까?

루비에서 배열의 교차점, 결합 및 하위 집합을 어떻게 얻을 수 있습니까? 멀티셋이라는 클래스에 대해 다른 메소드를 만들고 싶습니다. 저는 필요한 모든 방법을 가지고 있지만, 교차법, 결합법, 부분 집합법을 어떻게 써야 할지 잘 모르겠습니다. 교차로와 결합의 경우, 내 코드는 다음과 같이 시작합니다. def intersect(var) x = Multiset.new end 다음은 예입니다. X = [1, 1, 2, 4] Y = [1, 2, 2, 2] 그 다음 교차점X그리고.Y이라[1, 2].아마X그리고.Y어레이는 무엇입니까?그렇다면 매우 간단한 방법이 있습니다. x = [1, 1, 2, 4] y = [1, 2, 2, 2] # intersection x & y # => [1, 2] # union x | y #..

programing 2023.06.04

루비를 사용하여 단말기로 출력되는 텍스트를 컬러화하려면 어떻게 해야 합니까?

루비를 사용하여 단말기로 출력되는 텍스트를 컬러화하려면 어떻게 해야 합니까? 루비를 사용하여 단말기에서 출력을 위해 배경 및 전경 텍스트 색상화를 수행하려면 어떻게 해야 합니까? 파스칼을 프로그래밍할 때 우리는 모두 자신의 것을 쓰곤 했던 것을 기억합니다.textcolor(…)우리의 작은 교육 프로그램을 더 예쁘고 표현력 있게 보이게 하기 위한 절차들 루비에서 그것과 동등한 것을 코딩하려면 어떻게 해야 합니까?이것에 적합한 핵심 라이브러리에 내장된 지원이 있습니까?만약 그렇지 않다면, 그것을 추가하는 관용적인 방법은 무엇일까요?컬러라이즈는 제가 가장 좋아하는 보석입니다! :-) 확인해 보십시오. https://github.com/fazibear/colorize 설치: gem install colorize..

programing 2023.06.04
반응형