Ruby에서 1-D Array를 2-D Array로 전환 할려면.
글쓴이: yuni / 작성시간: 목, 2005/07/14 - 5:49오전
루비 초보자입니다(실은 프로그랭 전반에 걸쳐서
...).
처음 루비책을 보았을때는 조금만 배우면 이걸로 못하는 것이 없겠다 싶어서(구한 책에 Tk, CGI 까지 소개를 했더군요.) 시작을 했는데, 친숙하지 않아서 그런지 상당히 괴롭네요.
루비에서 이런 경우는 어떻게 하나요?
[yuni@tp PointSES]$ cat tmp.inp -278.9000 0.0000 -0.6400 -278.9000 1.3820 0.0000 -271.2000 0.0000 -0.6400 -271.2000 1.3820 0.0000 -263.5000 0.0000 -15.1200
이런 자료를읽어서 배열로 하고 싶습니다.
[yuni@tp PointSES]$ cat arr.rb #!/usr/bin/ruby oriData = IO.readlines("tmp.inp") oriData.length.times do |i| puts oriData[i] end [yuni@tp PointSES]$ ./arr -278.9000 0.0000 -0.6400 -278.9000 1.3820 0.0000 -271.2000 0.0000 -0.6400 -271.2000 1.3820 0.0000 -263.5000 0.0000 -15.1200
보시는것 처럼 oriData[0] 에는 -278.9000 0.0000 -0.6400 이렇게문자열이 들어 가 있습니다. 이것을 data[0][0] = -278.9000 data[0][1] = 0.0000, data[0][2] = -0.6400 이런식의 2차원 배열로 처음 부터 불러오는 수는없을까요? 아니면 다른 방법이라도...
그리고 루비관련 자료도 한번 부탁 드려봅니다.
지금 제가 보고 있는 책은 Making use of Ruby( Suresh Mahadevan 저, 2002년) 인데, 주소록 설명만 열심히 하고 있답니다. 온라인에서도 이자료 저자료 뒤져 보고는 있는데 좀 갑갑하네요. :oops:
Forums:
제가 멋대로 고쳐보았습니다. :)[code:1]lines =
제가 멋대로 고쳐보았습니다. :)
파일을 읽어와서 줄을 나눈 뒤 data 배열에 추가하는 코드입니다. 원래 코드와 다른 점은 each를 사용하였다는 것입니다. :)
그리고 http://ruby-doc.org/ 를 이용하시면 훨씬 수월하실 겁니다.
이렇게 빨리 많은 것을 알게 해 주셔서 감사합니다.저의 코드와는 비교
이렇게 빨리 많은 것을 알게 해 주셔서 감사합니다.
저의 코드와는 비교가 안될 만큼 직관적이고 명확합니다.
==========================
부양가족은 많은데, 시절은 왜 이리 꿀꿀할까요?
=====================
"지금하는 일을 꼭 완수하자."
댓글 달기