Python基础-数据类型和变量
- 数据类型和变量
- 整数型
- 浮点型。整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。
- 字符串:用‘’ 或“” 括起来,如果字符串内部既包含
'
又包含"
怎么办?可以用转义字符\
来标识,比如:'I\'m \"OK\"!' 显示的是 I'm "OK"!
- 布尔值:和布尔代数的表示完全一致,一个布尔值只有
True
、False
两种值,要么是True
,要么是False
,在Python中,可以直接用True
、False
表示布尔值 - 空值是Python里一个特殊的值,用
None
表示。
- 转义字符
\
可以转义很多字符,比如\n
表示换行,\t
表示制表符,字符\
本身也要转义,所以\\
表示的字符就是\
- 如果字符串里面有很多字符都需要转义,就需要加很多
\
,为了简化,Python还允许用r''
表示''
内部的字符串默认不转义print('\\\t\\')
- 如果字符串内部有很多换行,用
\n
写在一行里不好阅读,为了简化,Python允许用'''...'''
的格式表示多行内容print('''line1 ... line2 ... line3''')
-
注意:Python的整数没有大小限制,而某些语言的整数根据其存储长度是有大小限制的,例如Java对32位整数的范围限制在
-2147483648
-2147483647
。Python的浮点数也没有大小限制,但是超出一定范围就直接表示为
inf
(无限大)。 - 字符编码:
- ASCII :最早只有127个字符被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为
ASCII
编码.一个字节 - Unicode:Unicode把所有语言都统一到一套编码里。最常用的是用两个字节表示一个字符。
- UTF-8:用Unicode编码比ASCII编码需要多一倍的存储空间,把Unicode编码转化为“可变长编码”的
UTF-8
编码。UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。
- ASCII :最早只有127个字符被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为
- Python字符串:采用Unicode编码,也就是Python支持多语言。
- ord() 函数获取字符的整数编码
- chr() 函数把编码转变成对应的字符
-
于Python的字符串类型是
str
,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str
变为以字节为单位的bytes
。Python对
bytes
类型的数据用带b
前缀的单引号或双引号表示:x = b'ABC'
要注意区分
'ABC'
和b'ABC'
,前者是str
,后者虽然内容显示得和前者一样,但bytes
的每个字符都只占用一个字节。以Unicode表示的
str
通过encode()
方法可以编码为指定的bytes
- 反过来,如果我们从网络或磁盘上读取了字节流,那么读到的数据就是
bytes
。要把bytes
变为str
,就需要用decode()
方法:b'ABC'.decode('ascii')
- len()函数计算有多少个字符
-