ruby, zmiana linijek zczytanych z pliku

Regulamin działu
Kolorowanie składni :
[c][/c], [vb][/vb], [asm][/asm], [delphi][/delphi], [pascal[/pascal], [python][/python], [perl][/perl], [ruby][/ruby], [bash][/bash]

ruby, zmiana linijek zczytanych z pliku

Postprzez RobertG 21 sty 2010, o 22:16

Krótka piłka: odczytuje wszystkie linijki z pliku, na każdej z nich wykonuje tą samą operację, w pythonie zapisałbym to tak:

Kod: Zaznacz cały
  1. print map(lambda u: u.upper(), open("foo", "r").readlines())


w ruby -koniec końców- zrobiłem to tak:

Kod: Zaznacz cały
  1. arr = Array.new
  2. File.open('foo').each_line{ |l| arr.push l }
  3. p arr.collect{ |l| l.upcase }
  4.  


Chciałbym wersje w ruby zapisać tak, jak zapisuję ją w pythonie, czyli uniknąć wykorzystywania dodatkowej tablicy, która IMHO zaciemnia kod. Chciałbym wczytać linijki pliku do komórek tablicy, a tą tablicę potraktować jako argument dla map'a. No i chciałbym żeby to było zwięzłe i czytelne i krótkie :) Ja to zapisać?

Nie zależy mi na obsłudze błędów, bo kod jest czysto eksperymentalny, za to ważna jest dla mnie czytelność (choć może źle ją postrzegam, lub patrzę przez pryzmat nawyków z innych języków). Z góry dzięki!


Jakby kogoś to interesowało, tutaj jest odpowiedź: http://groups.google.com/group/comp.lan ... 96bc993aa#

RobertG
 
Posty: 4
Dołączył(a): 14 lis 2009, o 00:30
Lokalizacja: krk + rabka

Powrót do Perl/Ruby/Python

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 0 gości

cron