python是否支持字符类型?

时间:2017-11-15 15:13:44

标签: python

当我检查数据类型时,我想知道为什么char值作为字符串类型返回。

请参阅我的输入和输出。

输入:

a = 'c'

type(a)

输出:

class 'str'

4 个答案:

答案 0 :(得分:1)

没有

Python没有字符或char类型。所有单个字符都是长度为1的字符串。

答案 1 :(得分:0)

简单,不。

  

由于没有单独的“字符”类型,索引字符串会产生长度为1的字符串。

Source

换句话说,C中没有char类型的东西。单个字符只是一个字符的字符串。

答案 2 :(得分:0)

答案 3 :(得分:0)

Python中没有built-in类型的字符,有intstrbytes。如果您打算使用字符,则可以使用长度为1的str

请注意,Python是弱类型和动态类型的,因此您无需声明变量的类型。

您使用引号',双引号"和三引号"""创建的所有字符串均为字符串(unicode):

type("x")
str

调用built-in函数type时,它返回一个type对象,代表您的变量类型:

type(type("x"))
type

整数和字符确实具有映射功能(编码),本地清醒映射是ASCII,请参见chrord内置函数。

type(123)
int

type(chr(65))
str

type(ord("x"))
int

如果必须处理默认字符集中不可用的特殊字符,则必须考虑编码:

x = "é".encode()
b'\xc3\xa9'

该函数进行编码,将字符串转换为字节并可以解码回去:

x.decode()
'é'

方法encodedecode分别属于对象strbytes