Python基础教程之Python 数字(Number)

2021-01-20 10:35发布

Python 数字(Number)

数字数据类型用于存储数字。
他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。

Python3 支持 int、float、bool、complex(复数)。

int

当你指定一个值时,Number 对象就会被创建:

var1 = 1
var2 = 10
print(var1, var2)

当然,您也可以使用 del 语句删除一些对象的引用。

del 语句的用法是:

del var1
# 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。
# 
# 像大多数语言一样,数值类型的赋值和计算都是很直观的。
# 
# 内置的 type() 函数可以用来查询变量所指的对象类型。
a, b, c, d = 20, 5.5, True, 4 + 3j
print(a, b, c, d)
print(type(a), type(b), type(c), type(d))

Run:

20 5.5 True (4+3j)
<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
# 此外还可以用 isinstance(其是这点和 Java 是一样的) 来判断:
aa = 111
print(aa)
print(isinstance(aa, int))
print("当写到这个地方的时候,如果你是用的 pycharm,可以洗碗方法之后直接点哦")

Run:

111
True
当写到这个地方的时候,如果你是用的 pycharm,可以洗碗方法之后直接点哦

isinstance 和 type 的区别在于:

  • type()不会认为子类是一种父类类型。

  • isinstance()会认为子类是一种父类类型。


# 定义类(同样,类名首字母要大写) 父亲
class Father:
    pass
# 定义类 儿子
class Son(Father):
    pass
 
# 刚开始我用+好,居然行不通,说 str 是 只能将str(而不是“ bool”)连接到str,好吧,那我只能分开打印,毕竟我也是刚学
print("实例化 a 之后是否属于 a 类:", isinstance(Father(), Father))
print("type 判断 A()是否属于)", type(Father()) == Father)
print("我认我的儿子", isinstance(Son(), Father))
print("我不认", type(Son()) == Father)

bool

# 注意:
# 在 Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。
# 到 Python3 中,把 True 和 False 定义成关键字了,但它们的值还是 1 和 0,它们可以和数字相加。
# 比如:print(1 + True)

complex

Python还支持复数,复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

在这里咱们一起复习复习高中知识点:(以下内容来来源于百度百科)

我们把形如z=a+bi(a,b均为实数)的数称为复数,其中a称为实部,b称为虚部,i称为虚数单位。当z的虚部等于零时,常称z为实数;当z的虚部不等于零时,实部等于零时,常称z为纯虚数。复数域是实数域的代数闭包,即任何复系数多项式在复数域中总有根。

复数的模

将复数的实部与虚部的平方和的正的平方根的值称为该复数的模,记作∣z∣.

即对于复数z=a+bi的模,为,∣z∣ = 根号下,a方+b 方

数值运算

# 数值运算
print("以下是数值运算------------------------")
print("这是加法", 1 + 1)
print("这是减法", 100 - 1)
print("这是乘法", 3 * 7)
print("这是除法,得到一个浮点数", 2 / 4)
print("这是除法,得到一个整数", 2 // 4)
print("这是取余", 17 % 3)
print("这是乘方", 2 ** 10)

Run:

以下是数值运算------------------------
这是加法 2
这是减法 99
这是乘法 21
这是除法,得到一个浮点数 0.5
这是除法,得到一个整数 0
这是取余 2
这是乘方 1024

注意:

  • 1、Python可以同时为多个变量赋值,如a, b = 1, 2。

  • 2、一个变量可以通过赋值指向不同类型的对象。

  • 3、数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数。

  • 4、在混合计算时,Python会把整型转换成为浮点数。

总结

强类型语言:

一种总是强制类型定义的语言。

Java 和 Python 是强制类型定义的。

-----以下栗子这里只是说明,仅适用于 Python

您有一个整数,如果不明确地进行转换 ,不能将把它当成一个字符串。

强类型:不允许不同类型相加。例如:整形+字符串会报类型错误。偏向于不容忍隐式类型转换。

ps:

(在这里多说一下java 字符串并不是数据类型,java 中String 是个对象,是引用类型 。

基础类型与引用类型的区别是,基础类型只表示简单的字符或数字,引用类型可以是任何复杂的数据结构 ,基本类型仅表示简单的数据类型,引用类型可以表示复杂的数据类型,还可以操作这种数据类型的行为 。

java虚拟机处理基础类型与引用类型的方式是不一样的,对于基本类型,java虚拟机会为其分配数据类型实际占用的内存空间,而对于引用类型变量,他仅仅是一个指向堆区中某个实例的指针。)


作者:Soinice

链接:https://blog.csdn.net/Soinice/article/details/107902176

来源:CSDN

著作权归作者所有,转载请联系作者获得授权,切勿私自转载。