python入门课程第四讲之内置数据类型有哪些
作者:码农飞哥 发布时间:2023-05-06 22:09:34
我命油我不油天,今天依然是学习的一天。本文是【Python入门课程】系列的第四篇,其主要介绍Python的内置数据类型中的数字
干货满满,建议收藏,需要用到时常看看。 小伙伴们如有问题及需要,欢迎踊跃留言哦~ ~ ~。
前言
这篇文章主要介绍Python内置数据类型中的数字(Number),包括整数(int),小数(float),复数(Complex),布尔类型(bool)这几种数据类型。本文介绍的都是Python3.x中的数据类型。
变量
说数据类型之前,请思考一下下面几个问题:
数据是怎么存的呢?
数据类型有啥作用呢?
各种数据类型有啥区别呢?
要想回答这些问题,首先还是要先了解一下变量的概念。那么何为变量呢?
变量(Variable)可以看成是一个存放数据的盒子,每个变量都有一个指定的名字,通过变量名就可以找到变量中存放的数据。从底层的逻辑来看,变量就是在电脑内存中开辟一个区域,然后被存放的数据放在该区域中。
与变量相对应的是常量(Constant),他们都是用来存放数据的,不同的是常量一旦保存数据之后就不能修改了,而变量保存的数据可以被多次修改。
编程语言中,将数据放入变量的过程叫做赋值(Assignment),Python中使用等号=作为赋值运算符,变量是标识符的一种,所以变量的命名也是需要遵守Python标识符的命名规范。
name=value
这里的name就是变量名,而value就是要到变量中的数据。一个变量只能容纳一个值,当一个变量被赋值之后,再次赋值的话就会覆盖掉原来的值。
举个栗子:
a=100
就是将数字100赋值给变量a。
解释了变量的概念之后,就解决了第一问题,那就是数据是通过变量存在内存中的,当然也可以将数据持久化到硬盘中。
数据类型总览
理清楚变量的概念之后,接下来总体介绍一下Python中各种内置的数据类型,如下图思维导图显示的,数据类型有很多,本文将主要介绍属于数字的几个数据类型。其余的数据类型在后续的文章中会介绍到。
数据类型 | 作用 | 数据格式 | 举例 |
---|---|---|---|
int(整数) | 用于存放整数 | 100 | 100 |
float(小数) | 用于存放小数 | 书写时必须包含小数点 | 100.1 |
complex(复数) | 用于存放二元有序实数对 | a+bj | |
bool(布尔类型) | 用于存放布尔值True或者False | True |
Python是弱类型的语言
不同于其他强类型的编程语言(比如Java,C语言等),Python是弱类型的语言,其主要体现在
定义变量的时候不需要强制指定变量的数据类型。变量无须声明就可以直接赋值,对一个不存在的变量赋值就相当于定义一个新变量。
变量的数据类型可以随时改变,比如,同一个变量可以一会被赋值为整数,一会被赋值为字符串。
依然是举栗说明:比如定义一个变量a,并将100赋值给它,Java中的写法是:
int a=100
Python中的写法是:
a=100
可以看出Java中必须声明变量a的数据类型int,声明之后就只能向变量a中赋值整数,而不能赋值字符串等其他类型的数据。而Python则没有这些限制。
弱数据类型并不等于没有数据类型,这是在书写的时候不用刻意声明数据类型,但是在编程语言的内部还是有数据类型的,可以通过type() 方法进行查看其数据类型。
>>> type(100)
<class 'int'>
>>> type(100.1)
<class 'float'>
>>> type(True)
<class 'bool'>
>>> type(2+10j)
<class 'complex'>
各数据类型的详细介绍
整数(int)
Python3中的整数是不分类型,也就是说没有长整数类型(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×10n。
举个栗子:
2.3E5=2.3x10的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。
来源:https://feige.blog.csdn.net/article/details/118048965


猜你喜欢
- 本文实例讲述了Python程序控制语句用法。分享给大家供大家参考,具体如下:1、换行在Python中默认换行结束一个语句而不是使用分号,而如
- Altova 公司的 XMLSPY 是个不可多得的好东西,它几乎可以开发所有的 XML 产品。最近用它来做 Schema
- 前言:在使用 阿里云 上的一些产品时,遇到不少坑。 &nb
- 公司服务器上的ip最少的也有100多个,有时候查到一个站的Ip, 不想通过OA去查,自己就用自己最近学的python知识,结合数据库,编写了
- 文件名全小写,可使用下划线包应该是简短的、小写的名字。如果下划线可以改善可读性可以加入。如mypackage。模块与包的规范同。如mymod
- 一、多进程的实现方法一# 方法包装 多进程from multiprocessing import Processfrom ti
- 本文介绍了6个asp常用的判断函数的语法和使用方法,有IsArray 函数,IsDate 函数 ,IsEmpty 函数,IsNull 函数,
- 本系列专栏写作将采用首创的问答式写作形式,快速让你学习到 OpenCV 的初级、中级、高级知识。6. 在 Python OpenCV 针对图
- 先说明一下为什么要将数组转换成Image类。我处理的图像是FITS (Flexible Image Transport System)文件,
- 日志文件对于一个服务器来说是非常重要的,它记录着服务器的运行信息,许多操作都会写日到日志文件,通过日志文件可以监视服务器的运行状态及查看服务
- 索引优化,查询优化,查询缓存,服务器设置优化,操作系统和硬件优化,应用层面优化(web服务器,缓存)等等。这里的记录的优化技巧更适用于开发人
- 前言本文主要给大家介绍的是关于python对配置文件.ini增删改查操作的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的
- 一、为什么要分库分表如果一个网站业务快速发展,那这个网站流量也会增加,数据的压力也会随之而来,比如电商系统来说双十一大促对订单数据压力很大,
- 之前使用smarty的时候,通常是在php程序端读取数据(一般从数据库),然后assign给模板的变量,才可以在前端使用这个变量。这样不是不
- mysql-proxy实现读写分离MySQL Proxy是一个处于你的client端和MySQL server端之间的简单程序,它可以监测、
- 1,ConfigParser模块简介假设有如下配置文件,需要在Pyhton程序中读取$ cat config.ini[db]db_port
- 代码如下:declare @Q_ID uniqueidentifier set @Q_ID = dbo.uf_GetParamValueBy
- 本文实例讲述了python对象及面向对象技术。分享给大家供大家参考,具体如下:1 先看一个例子. 本章将讲解这个例子程序:文件: filei
- 定时任务是老生常谈了,因为我们总是需要定时修改特定的数据。实现它的方法肯定不止一种,但我在相当长一段时间里都是用程序编码去做的,今天突然想到
- TensorFlow提供了一种统一的格式来存储数据,就是TFRecord,它可以统一不同的原始数据格式,并且更加有效地管理不同的属性。TFR