Python 数字数据类型用于存储数值

数字类型不能修改,如果改变数字数据类型的值,将重新分配内存空间

以下实例在变量赋值时 Number 对象将被创建:

var1 = 10

var2 = 20

也可以使用del语句删除一些数字对象的引用

del var1,var2

Python 支持三种不同的数值类型:

整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。

Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。

有时用十六进制表示整数会更方便 0x表示前缀 0-9,a-f表示10-15

十六进制换算成十进制 个位数+十位数*16+百位数*16^2+千位数*16^3 以此类推

print(0xff00) #15*16*16*16+15*16*16+0+0=61440+3840=65280

浮点型(float) - 浮点型由整数部分与小数部分组成,

浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)

print(1.2e5)

print(1.2e-4)

复数( (complex)) - 复数由实数部分和虚数部分构成,

可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型

数字类型转换

int(x) 将x转换为一个整数。

float(x) 将x转换到一个浮点数。

complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。

complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。

数学运算

+ - * / 加减乘除

注意:在不同的机器上浮点运算的结果可能会不一样

print(10/3)#整数除法返回浮点型
print(9/3)#/除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数:
print(10//3)#还有一种除法是//,称为地板除,两个整数的除法仍然是整数:因为//除法只取结果的整数部分
print(7.0/2)#// 得到的并不一定是整数类型的数,它与分母分子的数据类型有关系
print(7/2.0)
print(10%3)#所以Python还提供一个余数运算,可以得到两个整数相除的余数

数学函数

abs()函数返回数字的绝对值

语法是abc(x) 参数x可以是整数,浮点数,复数

函数返回 x(数字)的绝对值,如果参数是一个复数,则返回它的大小。

print(abs(-40))
print(abs(-101.1))
print(abs(-1+1j))

ceil(x) 函数返回一个大于或等于 x 的的最小整数

注意:ceil()是不能直接访问的,需要导入 math 模块,通过静态对象调用该方法。

import math
print ("math.ceil(-45.17) : ", math.ceil(-45.17))
print ("math.ceil(100.12) : ", math.ceil(100.12))
print ("math.ceil(100.72) : ", math.ceil(100.72))
print ("math.ceil(math.pi) : ", math.ceil(math.pi))

cmp()方法返回x的指数,ex。

注意:exp()是不能直接访问的,需要导入 math 模块,通过静态对象调用该方法。

print ("math.exp(-45.17) : ", math.exp(-45.17))
print ("math.exp(100.12) : ", math.exp(100.12))
print ("math.exp(100.72) : ", math.exp(100.72))
print ("math.exp(math.pi) : ", math.exp(math.pi))

fabs() 方法返回数字的绝对值,如math.fabs(-10) 返回10.0。

fabs() 函数类似于 abs() 函数,但是他有两点区别:

abs() 是内置函数。 fabs() 函数在 math 模块中定义。

fabs() 函数只对浮点型跟整型数值有效。 abs() 还可以运用在复数中。

print ("math.fabs(-45.17) : ", math.fabs(-45.17))
print ("math.fabs(100.12) : ", math.fabs(100.12))
print ("math.fabs(100.72) : ", math.fabs(100.72))
print ("math.fabs(math.pi) : ", math.fabs(math.pi))

floor(x) 返回数字的下舍整数,小于或等于 x。

floor()是不能直接访问的,需要导入 math 模块,通过静态对象调用该方法。

print ("math.floor(-45.17) : ", math.floor(-45.17))
print ("math.floor(100.12) : ", math.floor(100.12))
print ("math.floor(100.72) : ", math.floor(100.72))
print ("math.floor(math.pi) : ", math.floor(math.pi))

log() 方法返回x的自然对数,x > 0。

log()是不能直接访问的,需要导入 math 模块,通过静态对象调用该方法。

print ("math.log(100.12) : ", math.log(100.12))
print ("math.log(100.72) : ", math.log(100.72))
print ("math.log(math.pi) : ", math.log(math.pi))

Python3学习笔记05-数字的更多相关文章

  1. Python3学习笔记(urllib模块的使用)转http://www.cnblogs.com/Lands-ljk/p/5447127.html

    Python3学习笔记(urllib模块的使用)   1.基本方法 urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None,  ...

  2. Python3学习笔记 - 准备环境

    前言 最近乘着项目不忙想赶一波时髦学习一下Python3.由于正好学习了Docker,并深深迷上了Docker,所以必须趁热打铁的用它来创建我们的Python3的开发测试环境.Python3的中文教程 ...

  3. 机器学习实战(Machine Learning in Action)学习笔记————05.Logistic回归

    机器学习实战(Machine Learning in Action)学习笔记————05.Logistic回归 关键字:Logistic回归.python.源码解析.测试作者:米仓山下时间:2018- ...

  4. python3学习笔记(7)_listComprehensions-列表生成式

    #python3 学习笔记17/07/11 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #通过列表生成式可以生成格式各样的list,这种list 一 ...

  5. python3学习笔记(6)_iteration

    #python3 学习笔记17/07/10 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #类似 其他语言的for循环,但是比for抽象程度更高 # f ...

  6. python3学习笔记(5)_slice

    #python3 学习笔记17/07/10 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #切片slice 大大简化 对于指定索引的操作 fruits ...

  7. C++ GUI Qt4学习笔记05

    C++ GUI Qt4学习笔记05   qtc++正则表达式 QIntValidator           --  只让用户输入整数 QDoubleValidator     --  只让用户输入浮 ...

  8. Python3学习笔记01-环境安装和运行环境

    最近在学习Python3,想写一些自己的学习笔记.方便自己以后看,主要学习的资料来自菜鸟教程的Python3教程和廖雪峰官方网站的Python教程. 1.下载 1)打开https://www.pyth ...

  9. python3学习笔记(9)_closure

    #python 学习笔记 2017/07/13 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #从高阶函数的定义,我们可以知道,把函数作为参数的函数, ...

  10. python3学习笔记(8)_sorted

    # python学习笔记 2017/07/13 # !/usr/bin/env python3 # -*- coding:utf-8 -*- #python 内置sorted()函数 可以对list进 ...

随机推荐

  1. MongoDB硬件及开发标准规范

    大数据平台部 运维研发组 MongoDB硬件及开发标准规范             说明:   无特殊情况,均以此文档为参考文件搭建,如有特殊情况,需与运维研发组和开发组商议后进行更改. MongoD ...

  2. GitHub for Windows客户端使用操作流程

    Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理.作为一个程序员,我们需要掌握其用法. 作为开源代码库以及版本控制系统,Github目前拥有140 ...

  3. es安装的时候遇到的所有的坑

    不允许root用户启动. 解决办法,创建子用户. 在linux下需要注意.es默认不能用root用户启动.我们需要新建一个用户来启动. groupadd  es adduser  es-user    ...

  4. vim 快捷键绑定

    1. 退出VIM,在shell下编译&&运行程序 :wq [root@fsjohnhuang ~]# gcc main.c -o main [root@fsjohnhuang ~]# ...

  5. Spark设计理念与基本架构

    1.基本概念 Spark中的一些概念: RDD(resillient distributed dataset):弹性分布式数据集. Partition:数据分区.即一个RDD的数据可以划分为多少个分区 ...

  6. 016、Dockerfile 常用命令(2019-01-07 周一)

    参考https://www.cnblogs.com/CloudMan6/p/6864000.html   Dokcerfile常见命令   FROM     指定base镜像   MAINTAINER ...

  7. DosBox 的 DOSBOX.CONF 的详细配置说

    1.首先下载 DOSbox 0.72 版.   2.下载完毕,开始安装.安装到任意目录均可.安装完毕会在开始菜单生成程序组,DOSBox.conf 文件是 DOSbox 的配置文件,保持默认配置就可 ...

  8. Fetch诞生记

    Fetch作用? https://developer.mozilla.org/zh-CN/docs/Web/API/Fetch_API/Using_Fetch Fetch API  提供了一个 Jav ...

  9. Idea运行web项目时,提示java.lang.ClassNotFoundException: com.mysql.jdbc.Driver解决方法

    今天用 idea写了个工程.结果最后报错,错误信息如下: java.lang.ClassNotFoundException: com.mysql.jdbc.Driverat org.apache.ca ...

  10. Matconvnet环境配置一些坑

    1.先安装VS再安装matlab否则安装失败 2.cuda7.5支持MATLABR2016a/b,支持VS2013但是不支持VS2015 3.cuda8.0支持MABTLABR2017a,对应编译需V ...