Python的六种标准类型

程序存储数据是需要变量,变量的值可以通过变量名访问的,而变量在内部是有类型的。
Python是弱类型语言,不需要声明变量类型。
Python变量必须要赋值,只有赋值变量才会被创建。

1、数值型

Python的数值类型只有Int整型和Float浮点型

整型

整型是没有小数点的数字。包括负整数、0、正整数

书写形式

>>> my_int=1		 
>>> type(my_int)		 
<class 'int'>

浮点型

浮点型是有小数点的数字,需注意,两个数做除法,结果一定是浮点型。

书写形式

#十进制的浮点数
>>> my_float=1.0	 
>>> type(my_float)	 
<class 'float'>

#指数型的浮点数,底数无论是整数还是浮点数,生成的结果都是浮点数	
>>> my_float=20E5
>>> my_float 
2000000.0

精确运算浮点数

>>> 10/3
3.3333333333333335
>>> from decimal import Decimal
>>> Decimal(10)/Decimal(3)
Decimal('3.333333333333333333333333333')

2、字符串

若干字符的集合就是字符串,用来表示英文、中文等等文字
Python默认的字符编码1是UTF-8

短字符串

书写形式

>>> my_shortStr='哈哈'  #单引号
>>> my_shortStr="哈哈"  #双引号

长字符串

书写形式

>>> my_longStr="""
我
喜
欢
"""
>>> print(my_longStr)

我
喜
欢

原字符串

由于转义符2的存在,字符会失去原本的意义,Python用r’'保持字符原本意义。
字符串含有遇到 \ 转义符号,请使用原字符号

书写形式

C:\Users\Admin\Desktop\笔记

>>> my_str='C:\Users\Admin\Desktop\笔记'
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
>>> my_str=r'C:\Users\Admin\Desktop\笔记'

换行字符串

书写形式

>>> my_lineStr="呦呦呦"\
	"haha"
>>> my_lineStr  #\+换行连接两个字符串
'呦呦呦haha'
>>> my_lineStr="哟哟\
哈哈哈"
>>> my_lineStr #\+换行连接一个字符串
'哟哟哈哈哈'
>>> my_num = 1 + \ 
	     2
>>> my_num # \+换行连接表达式,\前面必须是运算符
3

3、Bytes

字节串和字符串很相似,字符串的方法,字节串都使用。
两者区别:1、字节串是以字节为单位,字符串是根据编码方案决定的,如是UTF-8,那么就是可变长的单位
2、字节串只是简单记录内存的原始数据。而字符串是默认使用Unicode字符集编码存储对应的编号,读取时又自动把编号转换成字符串显示出来。当然字符串把可以编号存在字节串中,但是读取字节串时,需要手动指定解码,不是自动了。

书写形式

#这里演示字符串转换成字节串,也就是把字符串编码存储在字节串
>>> my_bytes=b'http://www.baidu.com' # 字符串是ASCII字符集里的,直接用b''
>>> my_bytes = b'I是谁' # 字符串中存在不是ASCII字符集的,用b''报错
SyntaxError: bytes can only contain ASCII literal characters.

>>> print('读取单个字符%s;读取整个字符串%s' %(my_bytes[0:1],my_bytes[:] ))				      
读取单个字符b'h';读取整个字符串b'http://www.baidu.com'

#UTF-8编号存储在Bytes字节串中
>>> my_bytes = bytes('I是谁'.encode(‘UTF-8’))		      
>>> print(my_bytes.decode('utf-8‘))			  
I是谁

3、列表

4、元组

5、Set集合

6、字典


  1. 字符编码的作用是如何把字符编号存储到计算机中,Python使用的是UTF-8变长的编码方案。 另外,UTF-8编码使用的是Unicode字符集(字符集定义了字符和二进制的对应关系,为每个字符分配了唯一的编号),因为Unicode字符集编码方案有UTF-8、UTF-16、UTF-32三种。 ↩︎
  2. 用编号间接表示字符的转义符,字符是属于ASCII字符集。例如最大的八进制\077表示?,十六进制\x64表示@。另外,ASCII字符集127个字符,用八进制无法表达完,\0代表八进制,后面只允许两位数。
    但是,为了方便记忆,使用了特殊字符代表了常用的转义符。例如\n 换行符、\r 回车符、\t 水平制表符、’ 单引号、" 双引号等 ↩︎