Riscrivo il messaggio d'errore completo della v. di Python (installata dai repo di Ubuntu 11.04)
Codice: Seleziona tutto
$ python
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import StringIO
>>> c = StringIO.StringIO()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'StringIO'
>>>
e ricopio il codice:
Codice: Seleziona tutto
LINE_MATCHER = (lambda line: line.lstrip()[0].isdigit())
INDEXES = (1, 3, 5, 8)
def skip_fst (n):
if n == 0:
return lambda line:line
else:
return lambda line: line[n:]
def get_fields(fobj, indexes=INDEXES, line_matcher=LINE_MATCHER, skip=0):
'''Given a file-like object yields the interesting fields
for each line.
'''
fskip = skip_fst(skip)
for line in fobj:
if line_matcher(line):
yield [value for i,value in enumerate(fskip(line).split())
if i in indexes]
Comunque, proseguirò con il mio odd.py cercando di utilizzare
fskip. E, come al solito, se ci sono intoppi ... non esiterò a postarli.
Ciao
EDIT. - Comunque crap aveva utilizzato StringIO solamente per evitare di dover creare un file di testo da utilizzare come esempio.
Una
tabella minimale (per effettuare dei test) l'avevo postata più su e la ricopio. Eccola:
Codice: Seleziona tutto
2!7!8 56116.00 P 0.114407 0.006553 0.387180 0.008213 P 0.4248871 0.0065737 P -75.490 .600 -12.365 .600
12!7!9 56117.00 P 0.115809 0.006609 0.386545 0.008302 P 0.4247509 0.0066554 P -76.204 .600 -12.411 .600
12!710 56118.00 P 0.117194 0.006665 0.385888 0.008391 P 0.4246868 0.0067368 P -76.725 .600 -12.448 .600
12!711 56119.00 P 0.118562 0.006721 0.385209 0.008480 P 0.4247279 0.0068177 P -76.897 .600 -12.469 .600
12!712 56120.00 P 0.119912 0.006776 0.384508 0.008568 P 0.4248887 0.0068984 P -76.963 .600 -12.441 .600
12!713 56121.00 P 0.121244 0.006832 0.383787 0.008656 P 0.4251683 0.0069788 P -77.184 .600 -12.390 .600
12!714 56122.00 P 0.122558 0.006886 0.383044 0.008744 P 0.4255519 0.0070588 P -77.529 .600 -12.399 .600
12!715 56123.00 P 0.123853 0.006941 0.382281 0.008831 P 0.4260083 0.0071385 P -77.813 .600 -12.496 .600
12!716 56124.00 P 0.125129 0.006995 0.381497 0.008918 P 0.4264934 0.0072179 P -77.964 .600 -12.604 .600
12!717 56125.00 P 0.126385 0.007048 0.380694 0.009005 P 0.4269541 0.0072970 P -78.015 .600 -12.636 .600
12!718 56126.00 P 0.127621 0.007102 0.379871 0.009091 P 0.4273365 0.0073758 P -77.965 .600 -12.593 .600
12!719 56127.00 P 0.128837 0.007155 0.379029 0.009177 P 0.4275968 0.0074544 P -77.821 .600 -12.533 .600
13!5!6 56418.00 P 0.097643 0.017451 0.394694 0.028304 P 0.1343568 0.0251504
13!5!7 56419.00 P 0.099303 0.017479 0.394607 0.028359 P 0.1326124 0.0252023
13!5!8 56420.00 P 0.100966 0.017505 0.394493 0.028414 P 0.1310318 0.0252542
13!5!9 56421.00 P 0.102631 0.017532 0.394352 0.028470 P 0.1296020 0.0253060
13!510 56422.00 P 0.104297 0.017559 0.394184 0.028525 P 0.1284343 0.0253578
13!511 56423.00 P 0.105964 0.017586 0.393989 0.028580 P 0.1274611 0.0254096
13!512 56424.00
13!513 56425.00
13!514 56426.00
13!515 56427.00
13!516 56428.00
13!517 56429.00
13!518 56430.00