Python内置数据类型详解:数字、变量与弱类型特性
本文系统讲解Python内置的数字数据类型,涵盖整数、浮点数、复数及布尔类型。重点解析变量概念、赋值运算符及Python作为弱类型语言的特性,通过对比Java等强类型语言,阐明动态类型的优势。同时详细介绍整数的多进制表示法及浮点数的科学计数法书写规范,帮助初学者建立扎实的Python基础。
坚持学习,每日精进。本文属于【Python入门课程】系列的第四篇,核心内容聚焦于Python内置数据类型中的数字部分。内容实用性强,建议收藏以便日后查阅。读者如有疑问或需求,欢迎在评论区留言交流。
前言
本文主要解析Python内置数据类型中的数字类别,具体包括整数(int)、浮点数(float)、复数(Complex)以及布尔类型(bool)。文中所述内容均基于Python 3.x版本环境。
变量
在深入探讨数据类型之前,建议先思考以下三个问题:
- 数据在计算机中是如何存储的?
- 数据类型在实际编程中有何作用?
- 不同数据类型之间有何具体区别?
要解答上述问题,首先需要理解变量的概念。变量(Variable)可视为存放数据的容器,每个变量拥有唯一的名称,通过变量名即可访问其中存储的数据。从底层逻辑来看,变量即在计算机内存中开辟的一块区域,用于存放具体数据。与变量相对的是常量(Constant),二者均用于存储数据,区别在于常量一旦赋值便不可修改,而变量的值可被多次修改。
在编程语言中,将数据存入变量的过程称为赋值(Assignment)。Python使用等号=作为赋值运算符。由于变量属于标识符的一种,其命名必须遵循Python标识符的命名规范。
name=value
上述代码中,name为变量名,value为存入的数据。一个变量只能容纳一个值,若对已赋值的变量再次赋值,新值将覆盖旧值。示例如下:
a=100
该代码将数字100赋值给变量a。明确了变量概念后,第一个问题得以解答:数据通过变量存储在内存中,亦可持久化保存至硬盘。
数据类型总览
理清变量概念后,接下来总体介绍Python中的内置数据类型。如图所示思维导图所示,Python数据类型丰富,本文重点讲解属于数字范畴的几种类型,其他类型将在后续文章中介绍。

| 数据类型 | 作用 | 数据格式 | 举例 |
|---|---|---|---|
| int(整数) | 用于存放整数 | 100 | 100 |
| float(小数) | 用于存放小数 | 书写时必须包含小数点 | 100.1 |
| complex(复数) | 用于存放二元有序实数对 | a+bj | |
| bool(布尔类型) | 用于存放布尔值True或者False | True |
Python是弱类型的语言
与Java、C语言等强类型编程语言不同,Python属于弱类型(动态类型)语言,其特点主要体现在:
- 定义变量时无需强制指定数据类型。变量无需预先声明即可直接赋值,对未存在的变量赋值即等同于定义新变量。
- 变量的数据类型可随时改变,例如同一变量可先被赋值为整数,随后又被赋值为字符串。
举例说明:若在Java中定义变量a并赋值100,写法为:
int a=100
而在Python中,写法简化为:
a=100
对比可见,Java要求声明变量a的类型为int,声明后只能赋值整数,无法赋值字符串等其他类型。Python则无此限制。需注意,弱类型不等于无类型,仅在书写时无需刻意声明,但内部仍保留数据类型,可通过type()方法查看。
>>> type(100)
<class 'int'>
>>> type(100.1)
<class 'float'>
>>> type(True)
<class 'bool'>
>>> type(2+10j)
<class 'complex'>
各数据类型的详细介绍
整数(int)
Python 3中的整数不分类型,即不存在长整数(Long)或短整数(short)之分,其取值范围无限,无论数值极大或极小,Python均可轻松处理。示例如下:
>>> 100000-0000000000000000000000000000000000000000
1000000000000000000000000000000000000000000000
>>> print(-1000000000000000000000000000000000000000000000)
-1000000000000000000000000000000000000000000000
可见无论数值大小均不会溢出,这表明Python对整数的处理能力极强。
整数的不同进制
Python支持多种进制表示整数。
- 十进制形式
日常常见的整数即为十进制形式,由0~9共十个数字排列组合而成。注意,十进制整数不能以0开头,除非数值本身即为0。
- 二进制形式
由0和1两个数字组成,书写时需以0b或0B开头。例如,1001对应十进制数为9。
- 八进制形式
八进制整数由0~7共八个数字组成,书写时需以0o或0O开头。注意,首字符为数字0,次字符为大写或小写字母O。
- 十六进制形式
由0~9十个数字及A~F(或a~f)六个字母组成,书写时需以0x或0X开头。
# 二进制
a=0b1001
print('a=',a)
# 八进制
b=0o207
print('b=',b)
# 十六进制
c=0x45
print('c=',c)
运行结果如下:
a= 9
b= 135
c= 69
Python 3.x允许使用下划线_作为数字(含整数和小数)的分隔符,通常每隔三个数字添加一个下划线,例如:click = 1_301_547
浮点数/小数(float)
在编程语言中,小数通常以浮点数形式存储,浮点数与定点数相对;若存储过程中小数点发生移动,则称为浮点数;若小数点固定不动,则称为定点数。
小数的书写形式
Python中小数有两种书写形式:
- 十进制形式
即常见的小数形式,如101.1、234.5、0.23等。
- 指数形式
Python小数点指数形式的写法为:aEn或aen
其中a为尾数部分,为十进制数;n为指数部分,为十进制数;E或e为固定字符,用于分割尾数与指数部分,数学表达式为a×10^n。
示例:
2.3E5 = 2.3 × 10^5
再举一例:
x=10.01
print('x=',x)
y=-0.031
print('y=',y)
z=2.3E10
print('z=',z)
w=-0.00000001
print('w=',w)
运行结果如下:
x= 10.01
y= -0.031
z= 23000000000.0
w= -1e-08
复数(complex)
复数(complex)由实部(real)和虚部(imag)构成。在Python中,复数的虚部以j或J作为后缀,具体格式为:
a+bj
其中a表示实部,b表示虚部。
c1=100+2j
print("c1的值是:",c1)
c2=200+3J
print('C2的值是:',c2)
运行结果如下:
c1的值是 (100+2j)
C2的值是 (200+3j)
布尔类型(bool)
布尔类型用于表示真(对)或假(错)。例如常见的3>2比较算式,结果为正确,Python中使用True表示;而2>3比较算式结果为错误,使用False表示。
print(3>2)
print(2>3)
print('True==1的结果是:',True==1)
print('False==0的结果是:',False==0)
运行结果如下:
True
False
True==1的结果是: True
False==0的结果是: True
从上述代码可见,bool类型的True值对应整数值1,False值对应整数值0。
总结
本文主要介绍了Python内置数据类型中的数字部分,内容基础但重要,希望对读者有所帮助。
到此关于Python入门课程中内置数据类型的介绍暂告一段落,更多相关Python数据类型内容可搜索本站历史文章或继续浏览后续文章,希望大家多多支持本站!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













