Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit e466217

Browse files
committed
Patch #1337756: fileinput now accepts Unicode filenames.
1 parent e9b1949 commit e466217

3 files changed

Lines changed: 13 additions & 1 deletion

File tree

Lib/fileinput.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ class FileInput:
184184
"""
185185

186186
def __init__(self, files=None, inplace=0, backup="", bufsize=0):
187-
if type(files) == type(''):
187+
if isinstance(files, basestring):
188188
files = (files,)
189189
else:
190190
if files is None:

Lib/test/test_fileinput.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,3 +157,13 @@ def writeFiles():
157157
verify(fi.lineno() == 6)
158158
finally:
159159
remove_tempfiles(t1, t2)
160+
161+
if verbose:
162+
print "15. Unicode filenames"
163+
try:
164+
t1 = writeTmp(1, ["A\nB"])
165+
fi = FileInput(files=unicode(t1, sys.getfilesystemencoding()))
166+
lines = list(fi)
167+
verify(lines == ["A\n", "B"])
168+
finally:
169+
remove_tempfiles(t1)

Misc/NEWS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -366,6 +366,8 @@ Extension Modules
366366
Library
367367
-------
368368

369+
- Patch #1337756: fileinput now accepts Unicode filenames.
370+
369371
- Patch #1373643: The chunk module can now read chunks larger than
370372
two gigabytes.
371373

0 commit comments

Comments
 (0)