(self, string)
Body-encode a string by converting it first to bytes.

        The type of encoding (base64 or quoted-printable) will be based on
        self.body_encoding.  If body_encoding is None, we assume the
        output charset is a 7bit encoding, so re-encoding the decoded
        string using the ascii codec produces the correct string version
        of the content.
Body-encode a string by converting it first to bytes.
Body - encode a string by converting it first to bytes .
def body_encode(self, string):
        """Body-encode a string by converting it first to bytes.

        The type of encoding (base64 or quoted-printable) will be based on
        self.body_encoding.  If body_encoding is None, we assume the
        output charset is a 7bit encoding, so re-encoding the decoded
        string using the ascii codec produces the correct string version
        of the content.
        """
        if not string:
            return string
        if self.body_encoding is BASE64:
            if isinstance(string, str):
                string = string.encode(self.output_charset)
            return email.base64mime.body_encode(string)
        elif self.body_encoding is QP:
            # quopromime.body_encode takes a string, but operates on it as if
            # it were a list of byte codes.  For a (minimal) history on why
            # this is so, see changeset 0cf700464177.  To correctly encode a
            # character set, then, we must turn it into pseudo bytes via the
            # latin1 charset, which will encode any byte as a single code point
            # between 0 and 255, which is what body_encode is expecting.
            if isinstance(string, str):
                string = string.encode(self.output_charset)
            string = string.decode('latin1')
            return email.quoprimime.body_encode(string)
        else:
            if isinstance(string, str):
                string = string.encode(self.output_charset).decode('ascii')
            return string
def body_encode ( self , string ) : if not string : return string if self . body_encoding is BASE64 : if isinstance ( string , str ) : string = string . encode ( self . output_charset ) return email . base64mime . body_encode ( string ) elif self . body_encoding is QP : # quopromime.body_encode takes a string, but operates on it as if # it were a list of byte codes.  For a (minimal) history on why # this is so, see changeset 0cf700464177.  To correctly encode a # character set, then, we must turn it into pseudo bytes via the # latin1 charset, which will encode any byte as a single code point # between 0 and 255, which is what body_encode is expecting. if isinstance ( string , str ) : string = string . encode ( self . output_charset ) string = string . decode ( 'latin1' ) return email . quoprimime . body_encode ( string ) else : if isinstance ( string , str ) : string = string . encode ( self . output_charset ) . decode ( 'ascii' ) return string