[Scipy-svn] r2480 - trunk/Lib/io
scipy-svn at scipy.org
scipy-svn at scipy.org
Wed Jan 3 01:08:27 EST 2007
Author: timl
Date: 2007-01-03 00:08:11 -0600 (Wed, 03 Jan 2007)
New Revision: 2480
Modified:
trunk/Lib/io/array_import.py
Log:
apply patch from #274
Modified: trunk/Lib/io/array_import.py
===================================================================
--- trunk/Lib/io/array_import.py 2007-01-03 04:20:22 UTC (rev 2479)
+++ trunk/Lib/io/array_import.py 2007-01-03 06:08:11 UTC (rev 2480)
@@ -90,8 +90,12 @@
return linelist
def get_open_file(fileobject, mode='rb'):
- if isinstance(fileobject, types.StringType):
+ try:
+ # this is the duck typing check: if fileobject
+ # can be used is os.path.expanduser, it is a string
+ # otherwise it is a fileobject
fileobject = os.path.expanduser(fileobject)
+
if mode[0]=='r' and not os.path.exists(fileobject):
raise IOError, (2, 'No such file or directory: '
+ fileobject)
@@ -103,7 +107,9 @@
if type(details) == type(()):
details = details + (fileobject,)
raise IOError, details
- else:
+ except AttributeError:
+ # it is assumed that the fileobject is a python
+ # file object if it can not be used in os.path.expanduser
file = fileobject
return file
More information about the Scipy-svn
mailing list