Use the new unicode literals for the io module
use basestring instead of str in Python 2.x
This commit is contained in:
parent
df70e05d22
commit
3784c6b1af
14
Lib/io.py
14
Lib/io.py
|
@ -19,6 +19,8 @@ XXX buffered readinto should work with arbitrary buffer objects
|
||||||
XXX use incremental encoder for text output, at least for UTF-16 and UTF-8-SIG
|
XXX use incremental encoder for text output, at least for UTF-16 and UTF-8-SIG
|
||||||
XXX check writable, readable and seekable in appropriate places
|
XXX check writable, readable and seekable in appropriate places
|
||||||
"""
|
"""
|
||||||
|
from __future__ import print_function
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
__author__ = ("Guido van Rossum <guido@python.org>, "
|
__author__ = ("Guido van Rossum <guido@python.org>, "
|
||||||
"Mike Verdone <mike.verdone@gmail.com>, "
|
"Mike Verdone <mike.verdone@gmail.com>, "
|
||||||
|
@ -110,15 +112,15 @@ def open(file, mode="r", buffering=None, encoding=None, errors=None,
|
||||||
binary stream, a buffered binary stream, or a buffered text
|
binary stream, a buffered binary stream, or a buffered text
|
||||||
stream, open for reading and/or writing.
|
stream, open for reading and/or writing.
|
||||||
"""
|
"""
|
||||||
if not isinstance(file, (str, unicode, int)):
|
if not isinstance(file, (basestring, int)):
|
||||||
raise TypeError("invalid file: %r" % file)
|
raise TypeError("invalid file: %r" % file)
|
||||||
if not isinstance(mode, str):
|
if not isinstance(mode, basestring):
|
||||||
raise TypeError("invalid mode: %r" % mode)
|
raise TypeError("invalid mode: %r" % mode)
|
||||||
if buffering is not None and not isinstance(buffering, int):
|
if buffering is not None and not isinstance(buffering, int):
|
||||||
raise TypeError("invalid buffering: %r" % buffering)
|
raise TypeError("invalid buffering: %r" % buffering)
|
||||||
if encoding is not None and not isinstance(encoding, str):
|
if encoding is not None and not isinstance(encoding, basestring):
|
||||||
raise TypeError("invalid encoding: %r" % encoding)
|
raise TypeError("invalid encoding: %r" % encoding)
|
||||||
if errors is not None and not isinstance(errors, str):
|
if errors is not None and not isinstance(errors, basestring):
|
||||||
raise TypeError("invalid errors: %r" % errors)
|
raise TypeError("invalid errors: %r" % errors)
|
||||||
modes = set(mode)
|
modes = set(mode)
|
||||||
if modes - set("arwb+tU") or len(mode) > len(modes):
|
if modes - set("arwb+tU") or len(mode) > len(modes):
|
||||||
|
@ -1163,13 +1165,13 @@ class TextIOWrapper(TextIOBase):
|
||||||
else:
|
else:
|
||||||
encoding = locale.getpreferredencoding()
|
encoding = locale.getpreferredencoding()
|
||||||
|
|
||||||
if not isinstance(encoding, str):
|
if not isinstance(encoding, basestring):
|
||||||
raise ValueError("invalid encoding: %r" % encoding)
|
raise ValueError("invalid encoding: %r" % encoding)
|
||||||
|
|
||||||
if errors is None:
|
if errors is None:
|
||||||
errors = "strict"
|
errors = "strict"
|
||||||
else:
|
else:
|
||||||
if not isinstance(errors, str):
|
if not isinstance(errors, basestring):
|
||||||
raise ValueError("invalid errors: %r" % errors)
|
raise ValueError("invalid errors: %r" % errors)
|
||||||
|
|
||||||
self.buffer = buffer
|
self.buffer = buffer
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
"""Unit tests for io.py."""
|
"""Unit tests for io.py."""
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
|
Loading…
Reference in New Issue