本文整理汇总了Python中pycket.values_string.W_String.fromascii方法的典型用法代码示例。如果您正苦于以下问题:Python W_String.fromascii方法的具体用法?Python W_String.fromascii怎么用?Python W_String.fromascii使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pycket.values_string.W_String
的用法示例。
在下文中一共展示了W_String.fromascii方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: num2str
# 需要导入模块: from pycket.values_string import W_String [as 别名]
# 或者: from pycket.values_string.W_String import fromascii [as 别名]
def num2str(a, radix):
from rpython.rlib.rbigint import BASE8, BASE16
if radix.value == 10:
return W_String.fromascii(a.tostring())
else:
if isinstance(a, values.W_Fixnum):
if radix.value == 16:
res = hex(a.value)
if a.value >= 0:
res = res[2:]
else:
res = "-" + res[3:]
return W_String.fromascii(res)
#elif radix.value == 8:
# return W_String.fromascii(oct(a.value))
# elif radix.value == 2:
# return W_String.fromascii(bin(a.value))
else:
raise SchemeException("number->string: radix unsupported")
elif isinstance(a, values.W_Bignum):
if radix.value == 16:
return W_String.fromascii(a.value.format(BASE16))
elif radix.value == 8:
return W_String.fromascii(a.value.format(BASE8))
elif radix.value == 2:
return W_String.fromascii(a.value.format("01"))
else:
raise SchemeException("number->string: radix unsupported")
elif isinstance(a, values.W_Flonum):
raise SchemeException("number->string: flonum only supports radix 10")
else:
assert 0 # not reached
示例2: string_append
# 需要导入模块: from pycket.values_string import W_String [as 别名]
# 或者: from pycket.values_string.W_String import fromascii [as 别名]
def string_append(args):
if not args:
return W_String.fromascii("")
builder = StringBuilder()
unibuilder = None
for a in args:
if not isinstance(a, W_String):
raise SchemeException("string-append: expected a string")
if unibuilder is None:
try:
builder.append(a.as_str_ascii())
continue
except ValueError:
unibuilder = UnicodeBuilder()
unibuilder.append(unicode(builder.build()))
unibuilder.append(a.as_unicode())
if unibuilder is None:
return W_String.fromascii(builder.build())
else:
return W_String.fromunicode(unibuilder.build())
示例3: string
# 需要导入模块: from pycket.values_string import W_String [as 别名]
# 或者: from pycket.values_string.W_String import fromascii [as 别名]
def string(args):
if len(args) == 0:
return W_String.fromascii("")
assert len(args) > 0
builder = UnicodeBuilder()
# XXX could do one less copy in the ascii case
for char in args:
if not isinstance(char, values.W_Character):
raise SchemeException("string: expected a character")
builder.append(char.value)
return W_String.fromunicode(builder.build())
示例4: make_string
# 需要导入模块: from pycket.values_string import W_String [as 别名]
# 或者: from pycket.values_string.W_String import fromascii [as 别名]
def make_string(k, char):
if char is None:
char = u'\0'
else:
char = char.value
c = ord(char)
if k.value < 0:
raise SchemeException("make-string: around negative")
if c < 128:
char = chr(c)
return W_String.fromascii(char * k.value)
else:
char = unichr(c)
return W_String.fromunicode(char * k.value)
示例5: symbol_to_string
# 需要导入模块: from pycket.values_string import W_String [as 别名]
# 或者: from pycket.values_string.W_String import fromascii [as 别名]
def symbol_to_string(v):
if v.asciivalue is not None:
return W_String.fromascii(v.asciivalue)
return W_String.fromunicode(v.unicodevalue)
示例6: bytes_to_string_latin
# 需要导入模块: from pycket.values_string import W_String [as 别名]
# 或者: from pycket.values_string.W_String import fromascii [as 别名]
def bytes_to_string_latin(str, err, start, end):
# XXX Not a valid implementation
return W_String.fromascii("")
示例7: symbol_to_string_impl
# 需要导入模块: from pycket.values_string import W_String [as 别名]
# 或者: from pycket.values_string.W_String import fromascii [as 别名]
def symbol_to_string_impl(v):
asciivalue = v.asciivalue()
if asciivalue is not None:
return W_String.fromascii(asciivalue)
return W_String.fromunicode(v.unicodevalue())