本文整理匯總了Python中codecs.make_identity_dict方法的典型用法代碼示例。如果您正苦於以下問題:Python codecs.make_identity_dict方法的具體用法?Python codecs.make_identity_dict怎麽用?Python codecs.make_identity_dict使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類codecs
的用法示例。
在下文中一共展示了codecs.make_identity_dict方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: _256_exception_codec
# 需要導入模塊: import codecs [as 別名]
# 或者: from codecs import make_identity_dict [as 別名]
def _256_exception_codec(name,exceptions,rexceptions,baseRange=range(32,256)):
import codecs
decoding_map = codecs.make_identity_dict(baseRange)
decoding_map.update(exceptions)
encoding_map = codecs.make_encoding_map(decoding_map)
if rexceptions: encoding_map.update(rexceptions)
### Codec APIs
class Codec(codecs.Codec):
def encode(self,input,errors='strict',charmap_encode=codecs.charmap_encode,encoding_map=encoding_map):
return charmap_encode(input,errors,encoding_map)
def decode(self,input,errors='strict',charmap_decode=codecs.charmap_decode,decoding_map=decoding_map):
return charmap_decode(input,errors,decoding_map)
class StreamWriter(Codec,codecs.StreamWriter):
pass
class StreamReader(Codec,codecs.StreamReader):
pass
C = Codec()
return codecs.CodecInfo(C.encode,C.decode,streamreader=StreamReader,streamwriter=StreamWriter,name=name)
示例2: _256_exception_codec
# 需要導入模塊: import codecs [as 別名]
# 或者: from codecs import make_identity_dict [as 別名]
def _256_exception_codec(xt):
exceptions,rexceptions = xt
import codecs
decoding_map = codecs.make_identity_dict(xrange(32,256))
decoding_map.update(exceptions)
encoding_map = codecs.make_encoding_map(decoding_map)
if rexceptions: encoding_map.update(rexceptions)
### Codec APIs
class Codec(codecs.Codec):
def encode(self,input,errors='strict',charmap_encode=codecs.charmap_encode,encoding_map=encoding_map):
return charmap_encode(input,errors,encoding_map)
def decode(self,input,errors='strict',charmap_decode=codecs.charmap_decode,decoding_map=decoding_map):
return charmap_decode(input,errors,decoding_map)
class StreamWriter(Codec,codecs.StreamWriter):
pass
class StreamReader(Codec,codecs.StreamReader):
pass
C = Codec()
return (C.encode,C.decode,StreamReader,StreamWriter)
示例3: _greekConvert
# 需要導入模塊: import codecs [as 別名]
# 或者: from codecs import make_identity_dict [as 別名]
def _greekConvert(data):
global _greek2Utf8
if not _greek2Utf8:
from reportlab.pdfbase.rl_codecs import RL_Codecs
import codecs
dm = decoding_map = codecs.make_identity_dict(xrange(32,256))
for k in xrange(0,32):
dm[k] = None
dm.update(RL_Codecs._RL_Codecs__rl_codecs_data['symbol'][0])
_greek2Utf8 = {}
for k,v in dm.iteritems():
if not v:
u = '\0'
else:
u = unichr(v).encode('utf8')
_greek2Utf8[chr(k)] = u
return ''.join(map(_greek2Utf8.__getitem__,data))
#------------------------------------------------------------------
# !!! NOTE !!! THIS TEXT IS NOW REPLICATED IN PARAGRAPH.PY !!!
# The ParaFormatter will be able to format the following
# tags:
# < /b > - bold
# < /i > - italics
# < u > < /u > - underline
# < strike > < /strike > - strike through
# < super > < /super > - superscript
# < sup > < /sup > - superscript
# < sub > < /sub > - subscript
# <font name=fontfamily/fontname color=colorname size=float>
# <span name=fontfamily/fontname color=colorname backcolor=colorname size=float style=stylename>
# < bullet > </bullet> - bullet text (at head of para only)
# <onDraw name=callable label="a label"/>
# <index [name="callablecanvasattribute"] label="a label"/>
# <link>link text</link>
# attributes of links
# size/fontSize=num
# name/face/fontName=name
# fg/textColor/color=color
# backcolor/backColor/bgcolor=color
# dest/destination/target/href/link=target
# <a>anchor text</a>
# attributes of anchors
# fontSize=num
# fontName=name
# fg/textColor/color=color
# backcolor/backColor/bgcolor=color
# href=href
# <a name="anchorpoint"/>
# <unichar name="unicode character name"/>
# <unichar value="unicode code point"/>
# <img src="path" width="1in" height="1in" valign="bottom"/>
# width="w%" --> fontSize*w/100 idea from Roberto Alsina
# height="h%" --> linewidth*h/100 <ralsina@netmanagers.com.ar>
# <greek> - </greek>
#
# The whole may be surrounded by <para> </para> tags
#
# It will also be able to handle any MathML specified Greek characters.
#------------------------------------------------------------------