當前位置: 首頁>>代碼示例>>Python>>正文


Python io.IOBase方法代碼示例

本文整理匯總了Python中io.IOBase方法的典型用法代碼示例。如果您正苦於以下問題:Python io.IOBase方法的具體用法?Python io.IOBase怎麽用?Python io.IOBase使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在io的用法示例。


在下文中一共展示了io.IOBase方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: prepare_iter

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def prepare_iter(value):
    """
    Ensure response body is iterable and resolves to False when empty.
    """
    if isinstance(value, text_or_bytes):
        # strings get wrapped in a list because iterating over a single
        # item list is much faster than iterating over every character
        # in a long string.
        if value:
            value = [value]
        else:
            # [''] doesn't evaluate to False, so replace it with [].
            value = []
    # Don't use isinstance here; io.IOBase which has an ABC takes
    # 1000 times as long as, say, isinstance(value, str)
    elif hasattr(value, 'read'):
        value = file_generator(value)
    elif value is None:
        value = []
    return value


# GZIP 
開發者ID:cherrypy,項目名稱:cherrypy,代碼行數:25,代碼來源:encoding.py

示例2: files_upload_ex

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def files_upload_ex(
        self,
        file: Union[str, IOBase] = None,
        content: str = None,
        channels: [str] = None,
        title: str = None,
        initial_comment: str = None,
        file_type: str = None,
    ):
        args = {}

        if channels:
            args["channels"] = ",".join(channels)

        if title:
            args["title"] = title

        if initial_comment:
            args["initial_comment"] = initial_comment

        if file_type:
            args["filetype"] = file_type

        return await self.files_upload(file=file, content=content, **args) 
開發者ID:microsoft,項目名稱:botbuilder-python,代碼行數:26,代碼來源:slack_client.py

示例3: test_title_changed_to_include_image_name_when_title_given

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def test_title_changed_to_include_image_name_when_title_given(self,
            mock_open, mock_add_header, mock_add_img_subj, mock_index,
            mock_exists, mock_writable):
        mock_file = MagicMock(spec=io.IOBase)
        mock_open.return_value.__enter__.return_value = mock_file
        mock_exists.return_value = False
        mock_writable.return_value = True
        qc_config = self.get_config_stub()

        html.write_index_pages(self.qc_dir, qc_config, self.subject,
                title='QC mode for image {}')

        for image in qc_config.images:
            name = image.name
            found = False
            for call in mock_index.call_args_list:
                if name in call[1]['title']:
                    found = True
            assert found 
開發者ID:edickie,項目名稱:ciftify,代碼行數:21,代碼來源:test_html.py

示例4: _get_extension

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def _get_extension(file):
    """
    Gets the extension for the given file, which can be either a
    str or an ``open()``'ed file (which has a ``.name`` attribute).
    """
    if isinstance(file, str):
        return os.path.splitext(file)[-1]
    elif isinstance(file, pathlib.Path):
        return file.suffix
    elif isinstance(file, bytes):
        kind = imghdr.what(io.BytesIO(file))
        return ('.' + kind) if kind else ''
    elif isinstance(file, io.IOBase) and not isinstance(file, io.TextIOBase) and file.seekable():
        kind = imghdr.what(file)
        return ('.' + kind) if kind is not None else ''
    elif getattr(file, 'name', None):
        # Note: ``file.name`` works for :tl:`InputFile` and some `IOBase`
        return _get_extension(file.name)
    else:
        # Maybe it's a Telegram media
        return get_extension(file) 
開發者ID:LonamiWebs,項目名稱:Telethon,代碼行數:23,代碼來源:utils.py

示例5: temporary_offset

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def temporary_offset(self, offset=None, whence=0):
        """Context manager for temporarily seeking to another file position.

        To be used as part of a ``with`` statement::

            with fh_raw.temporary_offset() [as fh_raw]:
                with-block

        On exiting the ``with-block``, the file pointer is moved back to its
        original position.  As a convenience, one can pass on the offset
        to seek to when entering the context manager.  Parameters are as
        for :meth:`io.IOBase.seek`.
        """
        oldpos = self.tell()
        try:
            if offset is not None:
                self.seek(offset, whence)
            yield self
        finally:
            self.seek(oldpos) 
開發者ID:mhvk,項目名稱:baseband,代碼行數:22,代碼來源:base.py

示例6: __getstate__

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def __getstate__(self):
        if self.writable():
            raise TypeError('cannot pickle file opened for writing')

        state = self.__dict__.copy()
        # IOBase instances cannot be pickled, but we can just reopen them
        # when we are unpickled.  Anything else may have internal state that
        # needs preserving (e.g., SequentialFile), so we will assume
        # it takes care of this itself.
        if isinstance(self.fh_raw, io.IOBase):
            fh = state.pop('fh_raw')
            state['fh_info'] = {
                'offset': 'closed' if fh.closed else fh.tell(),
                'filename': fh.name,
                'mode': fh.mode}

        return state 
開發者ID:mhvk,項目名稱:baseband,代碼行數:19,代碼來源:base.py

示例7: __getstate__

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def __getstate__(self):
        state = super().__getstate__()
        fh_raw = state.pop('fh_raw')
        if self.header0.mode == 'rawdump':
            fh_raw = [[fh_raw]]

        fh_info = []
        for fh_pair in fh_raw:
            pair_info = []
            for fh in fh_pair:
                if isinstance(fh, io.IOBase):
                    pair_info.append({
                        'offset': 'closed' if fh.closed else fh.tell(),
                        'filename': fh.name,
                        'mode': fh.mode})
                else:
                    pair_info.append(fh)
            fh_info.append(pair_info)

        state['fh_info'] = fh_info
        return state 
開發者ID:mhvk,項目名稱:baseband,代碼行數:23,代碼來源:base.py

示例8: _body2str

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def _body2str(self, body):
        try:
            from aiohttp.payload import Payload
        except ImportError:
            Payload = None

        if Payload is not None and isinstance(body, Payload):
            body = body._value

        if isinstance(body, io.IOBase):
            return _FILE

        if not isinstance(body, str):
            try:
                body = str(body, "utf8")
            except UnicodeDecodeError:
                return _UNREADABLE

        return body 
開發者ID:loads,項目名稱:molotov,代碼行數:21,代碼來源:listeners.py

示例9: __init__

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def __init__(self, filepath_or_object, mode="wb", compresslevel=6):
        """Initialize the class."""
        if isinstance(filepath_or_object, io.IOBase):
            handle = filepath_or_object
        else:
            handle = open(filepath_or_object, mode=mode)
        """
        if fileobj:
            assert filename is None
            handle = fileobj
        else:
            if "w" not in mode.lower() and "a" not in mode.lower():
                raise ValueError("Must use write or append mode, not %r" % mode)
            if "a" in mode.lower():
                handle = open(filename, "ab")
            else:
                handle = open(filename, "wb")
        """
        self._text = "b" not in mode.lower()
        self._handle = handle
        self._buffer = b""
        self.compresslevel = compresslevel 
開發者ID:betteridiot,項目名稱:bamnostic,代碼行數:24,代碼來源:bgzf.py

示例10: cmd_stmt_execute

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def cmd_stmt_execute(self, statement_id, data=(), parameters=(), flags=0):
        """Execute a prepared MySQL statement"""
        parameters = list(parameters)
        long_data_used = {}

        if data:
            for param_id, _ in enumerate(parameters):
                if isinstance(data[param_id], IOBase):
                    binary = True
                    try:
                        binary = 'b' not in data[param_id].mode
                    except AttributeError:
                        pass
                    self.cmd_stmt_send_long_data(statement_id, param_id,
                                                 data[param_id])
                    long_data_used[param_id] = (binary,)

        execute_packet = self._protocol.make_stmt_execute(
            statement_id, data, tuple(parameters), flags,
            long_data_used, self.charset)
        packet = self._send_cmd(ServerCmd.STMT_EXECUTE, packet=execute_packet)
        result = self._handle_binary_result(packet)
        return result 
開發者ID:LuciferJack,項目名稱:python-mysql-pool,代碼行數:25,代碼來源:connection.py

示例11: close

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def close(self):
        """Delete the IO object and close the input file and the output file"""
        if self.__closed:
            # avoid double close
            return
        deleted = False
        try:
            # on posix, one can remove a file while it's opend by a process
            # the file then will be not visable to others, but process still have the file descriptor
            # it is recommand to remove temp file before close it on posix to avoid race
            # on nt, it will just fail and raise OSError so that after closing remove it again
            self.__del_files()
            deleted = True
        except OSError:
            pass
        if isinstance(self.input_file, IOBase):
            self.input_file.close()
        if isinstance(self.output_file, IOBase):
            self.output_file.close()
        if not deleted:
            self.__del_files()
        self.__closed = True 
開發者ID:luogu-dev,項目名稱:cyaron,代碼行數:24,代碼來源:io.py

示例12: copy_sparse_data

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def copy_sparse_data(input_stream, output_stream, sparse_map):
    '''Copy data blocks from input to output according to sparse_map

    :param input_stream: io.IOBase input instance
    :param output_stream: io.IOBase output instance
    :param sparse_map: iterable of (offset, size)
    '''

    buf = bytearray(BUF_SIZE)

    for chunk in sparse_map:
        input_stream.seek(chunk[0])
        left = chunk[1]
        while left:
            if left > BUF_SIZE:
                read = input_stream.readinto(buf)
                output_stream.write(buf[:read])
            else:
                buf_trailer = input_stream.read(left)
                read = len(buf_trailer)
                output_stream.write(buf_trailer)
            left -= read
            if not read:
                raise Exception('premature EOF') 
開發者ID:QubesOS,項目名稱:qubes-core-admin,代碼行數:26,代碼來源:tarwriter.py

示例13: load

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def load(self, content):
        """Loads Command Definitions from the given YAML content into
        into this Command Dictionary.  Content may be either a
        filename containing YAML content or a YAML string.

        Load has no effect if this Command Dictionary was already
        instantiated with a filename or YAML content.
        """
        if self.filename is None:
            if os.path.isfile(content):
                self.filename = content
                stream        = open(self.filename, 'rb')
            else:
                stream        = content

            cmds = yaml.load(stream, Loader=yaml.Loader)
            cmds = handle_includes(cmds)
            for cmd in cmds:
                self.add(cmd)

            if isinstance(stream, IOBase):
                stream.close() 
開發者ID:NASA-AMMOS,項目名稱:AIT-Core,代碼行數:24,代碼來源:cmd.py

示例14: load

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def load(self, content):
        """Loads Limit Definitions from the given YAML content into this
        Telemetry Dictionary.  Content may be either a filename
        containing YAML content or a YAML string.

        Load has no effect if this Limits Dictionary was already
        instantiated with a filename or YAML content.
        """
        if self.filename is None:
            if os.path.isfile(content):
                self.filename = content
                stream        = open(self.filename, 'rb')
            else:
                stream        = content
            
            limits = yaml.load(stream, Loader=yaml.Loader)

            for lmt in limits:
                self.add(lmt)

            if isinstance(stream, IOBase):
                stream.close() 
開發者ID:NASA-AMMOS,項目名稱:AIT-Core,代碼行數:24,代碼來源:limits.py

示例15: loadYAML

# 需要導入模塊: import io [as 別名]
# 或者: from io import IOBase [as 別名]
def loadYAML (filename=None, data=None):
    """Loads either the given YAML configuration file or YAML data.

    Returns None if there was an error reading from the configuration
    file and logs an error message via ait.core.log.error().
    """
    config = None

    try:
        if filename:
            data = open(filename, 'rt')

        config = yaml.load(data, Loader=yaml.Loader)

        if isinstance(data, IOBase):
            data.close()
    except IOError as e:
        msg = 'Could not read AIT configuration file "%s": %s'
        log.error(msg, filename, str(e))

    return config 
開發者ID:NASA-AMMOS,項目名稱:AIT-Core,代碼行數:23,代碼來源:cfg.py


注:本文中的io.IOBase方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。