📅  最后修改于: 2023-12-03 15:34:21.964000             🧑  作者: Mango
ascii()
在Python中,ascii()
是一个内置函数,用于返回一个包含给定对象的ASCII字符串表示。ASCII字符串是unicode字符串的一个子集,其中只包含0-127之间的ASCII字符。
ascii(object)
object
: 必需。要转换为ASCII字符串表示的对象。
ascii()
函数返回给定对象的ASCII字符串表示。
# 示例1:返回字符的ASCII表示
>>> ascii('A')
"'A'"
>>> ascii('你')
"'\\u4f60'"
>>> ascii('!')
"'!'"
# 示例2:返回列表中每个元素的ASCII表示
>>> ascii([1, 2, 'A', '你', '!'])
'[1, 2, \'A\', \'\\u4f60\', \'!\']'
可以看到,ascii()
函数返回的字符串中,非ASCII字符会以'\uXXXX'
的形式表示,其中XXXX
为该字符在Unicode编码中的16进制表示。
ascii()
函数不会自动将包含非ASCII字符的字符串转换为其ASCII表示。如果需要这样的功能,请使用unicodedata.normalize()
或str.encode('ascii', 'ignore')
等方法。
在Python 3.x及以上版本中,repr()
函数默认返回ASCII字符串并且不包含引号和换行符。因此,ascii()
函数和repr()
函数有些类似,但还有一些细微的差别。例如,repr('\n')
返回包含转义字符\n
的字符串,而ascii('\n')
返回'\\n'
,仅包含字符\n
的ASCII表示。