:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性。

Python学习

Python有三种不同的数字类型:整数(int),浮点数(float)和复数(complex)。 值得注意的是,还有一种特殊的数字类型包含在整数int类型里,那就是布尔类型(bool)。

布尔类型虽然是整数类型的子类型,但是非常特殊,将另外单独讲。

此外, 复数包含实部和虚部,分别以一个浮点数表示。 要从一个复数 z 中提取这两个部分,可使用 z.real 和 z.imag。

1. 整数类型-int

Python中的整数int具有无限的精度。一般我们说到的整数都是指十进制整数,但Python中还有其它进制的整数,如二进制整数、八进制整数、十六进制整数等;除了十进制整数可以直接表示外,二进制、八进制和十六进制都需要在数值前面加上相应的前缀来表示。

十进制demical——无前缀。如338。

二进制binary——0b或0B前缀,如0b1011001。

八进制octal——0o或0O前缀,如0o557。

十六进制hexadecimal——0x或0X前缀,如0x16f。

十进制可以用int()、bin()、oct()和hex()等内置函数,实现与二进制、八进制和十六进制这些不同进制的整数的直接相互转换。

a = 16 # a是一个十进制整数。bin(a) # 十进制整数转换为二进制。Out[39]: '0b10000'oct(a) # 十进制转换成八进制。Out[40]: '0o20'hex(a) # 十进制转换成十六进制。Out[41]: '0x10'

2. 浮点类型-float

浮点数通常使用C中的double来实现。与数学中实数的概念一致,是带有小数的数字。

IEEE规定,浮点数受到17位有效数字的限制,超过的要用科学记数法来表示。

由于计算机实现原理的先天不足,浮点数在计算中存储的只是近似值。浮点数的这个劣势也使得它不适合用作字典数据类型中的键。

浮点数使用科学计数法表示

使用字母e或E作为幂的符号,以10为基数,格式如下:

e 表示a*10^b。

例如:4.3e-3的值为0.0043, 9.65E5的值为960000,0。

3. 复数类型-complex

与数学不同,在Python编程中,

不用i,而用j或J来定义-1的平方根

,以此为基础,构建数学体系。如在Python里,某个具体的复数表示是1 + 3j,而不是1 + 3i。

在Python中,复数只能作相等比较,不能作大小比较。

a + bj被称为复数,其中,a是实部,b是虚部。

对于复数z = 1 + 2j而言,z.real可以获得实部,z.imag可以获得虚部。这里要强调的是,无论实部、虚部是数学中的整数还是小数,在Python中,统一都是浮点数float类型,而不是整数int类型;换句话说,z.real、z.imag均为浮点数,而不是整数。

c1 = 1 + 2jc1.imag #提取复数c1的虚部。Out[15]: 2.0 # 虚部为浮点数。c1.real #提取复数c1的实部。Out[16]: 1.0 # 实部为浮点数。c2 = complex(1, 2) #构建一个实部的值为1,虚部的值为2的复数。c2Out[24]: (1+2j)

4. 不同类型的数值之间的混合运算

不同类型之间的数值可以进行混合运算,生成结果为范围最宽的类型。

int < float < complex。

以上最前面的最窄,最后的最宽。如下例所示:

i = 7f = 0.8c = 1 + 9ji + f + cOut[28]: (8.8+9j) # 混合运算的结果是范围最宽的数字类型——复数。

虽然数字类型不同,但它们的“值”可以相等。如下例所示:

i = 7f = 7.00c = 7.0 + 0Ji == f == cOut[32]: True # True表明三种数字类型的“值”是相等的。

5. 数值运算的常用函数

数值运算常用到以下函数:

abs():绝对值函数。如果运算对象是int或float,是计算绝对值;如果运算对象是复数,则计算复数的模长。

divmod(x, y):商余函数,计算x//y同时输出商和余数(x//y, x%y),以元组形式出现(商, 余数)。

pow(x, y):幂函数,求x的y次幂。

max()、min(),最大值最小值函数。

round(),对浮点数进行四舍五入操作。由于浮点数在计算机的存储存在误差,因此有时运算结果可能令人意外,如round(0.5) = 0。

int()、float()、complex()等函数,将不同的数字类型转换为相应的数字类型。

abs(-9.1)Out[33]: 9.1abs(3 + 4J) # 计算复数的模长。Out[34]: 5.0divmod(10, 3)Out[35]: (3, 1) # 10除以3,商为3,余数为1。pow(3, 2)Out[36]: 9 # 3的2次方为9。max(3, 5, 4, 2) Out[37]: 5 # 求几个数中的最大值。min(3, 5, 4, 2)Out[38]: 2 # 求几个数中的最小值。round(1.5)Out[39]: 2 # 对1.5进行四舍五入。a = round(0.5) # 四舍五入有失灵的情况。aOut[41]: 0int(0.5) # 取0.5的整数部分。Out[42]: 0int(1.2) # 取1.2的整数部分。Out[43]: 1float(2) # 把int类型2转换为float类型。Out[44]: 2.0complex(3.5) # 把float类型3.5转换为复数类型。Out[45]: (3.5+0j)complex(9) # 把int类型9转换为复数类型。Out[46]: (9+0j)

6. range函数

函数原型:range([start=0], stop, [stepSize=1])。其范围是整数序列(…, -1000000,…, 0,1,2,3,…)。

参数含义:

start:计数从start开始,默认是从0开始。例如range(5)等价于range(0, 5)。可选参数。

stop:计数到end结束,但不包括end。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5 。必选参数。

stepSize:每次跳跃的间距,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)。可选参数。

range([start], stop, [stepSize])中的三个参数都必须是int型,当时float型时,系统会报错。 ,range()函数是可以反向遍历的。当stepSize为负整数时,range()就反向遍历了。如:

for i in range(4,-1,-1): print(i, end=' ')<<<4 3 2 1 0

To be continued.

python三种数据类型_Python零基础入门学习02:Python基本数据类型:数字类型相关推荐

  1. python 类和对象_Python零基础入门学习33:类与面向对象编程:类的继承

    注:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性. 本文字数约1300,阅读时间约为3分钟. Python面向对象编程 类的继承机制 如果一个类A继承自另一个类B,就把继承者类A称 ...

  2. 列表逆序排序_Python零基础入门学习05:容器数据类型:列表和元组

    注:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性. Python的数据收纳盒 数据收纳盒 收纳数据对象的数据类型,以一种规则的下标索引方式访问到每个数据,是一种序列(sequenc ...

  3. python初学小甲鱼_Python零基础入门学习 作者:小甲鱼

    temp = input('不妨想一想小甲鱼现在心里想的哪一个数字:') guess = int(temp) if guess == 8: print('你是小甲鱼心里的蛔虫吗?') print('哼 ...

  4. 零基础入门python小甲鱼-小甲鱼零基础入门学习Python百度云下载 | 宅男君

    Python编程语言可以在不同平台上使用,比如Windows.MAC.Linux操作系统.通常情况下,一个Python程序在你自己的Windows系统上运行,也可以在别人的MAC系统上运行.Pytho ...

  5. python dict 合并同类项_零基础入门学习Python,这13个Python惯用小技巧一定要收藏...

    原标题:零基础入门学习Python,这13个Python惯用小技巧一定要收藏 Python的小技巧很多,入门容易精通难!在进阶的路上,有没有什么好的技巧和好的方法,就是不断总结,不断记笔记!尤其是好的 ...

  6. python怎么输出浮点数_python 零基础入门教程第 2 章:基本数据类型 (一)

    一.什么是数据类型 编程语言通过一些复杂的计算机物理底层机制,创造不同类型的数据,用来表示现实世界中的不同信息,以便于计算机更好的存储和计算. 每种编程语言都会有一些基本的数据类型用来表示现实世界中的 ...

  7. python 二进制流转图片_Python零基础入门到精通-5.1节:Python程序的执行过程

    教程引言: 系统地讲解计算机基础知识,Python的基础知识, 高级知识,web开发框架,爬虫开发,数据结构与算法,nginx, 系统架构.一步步地帮助你从入门到就业. 5.1.1 在命令行中执行Py ...

  8. python做动画视频教程_Python零基础入门动画教程

    课程答疑: QQ群:913293727 适用人群 在校大学生/应届毕业生/业余编程爱好者/初.中开发学习者/大中专院校师生/数据分析人员/技术支持/测试人员 课程概述--课程大纲-- 1.Python ...

  9. python环境变量配置_Python零基础入门到年薪二十万-1.1节: 在windows中安装Python

    教程引言: 该系列图文课程以及视频课程全部免费.课程会系统地讲解计算机的基础知识,Python的基础知识. 在讲解Python的高级知识中,会系统地讲解面向对象编程,并发编程,数据库编程,网络编程. ...

最新文章

  1. 小猫TOMCAT其实很可爱
  2. ViSP中识别AprilTag的C++实例代码解释
  3. golang 文件操作 创建 读写 复制移动 权限 删除
  4. LR与SVM的相同点和不同点
  5. Date类+DateFormat
  6. 电信运营商x86服务器定制策略
  7. 如何打开pr_debug调试信息
  8. python 解决bytes和str之间 出现 TypeError的问题
  9. 代码审计中的文件包含漏洞
  10. 面试官系统精讲Java源码及大厂真题 - 27 Thread 源码解析
  11. UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb4 in position 176: in xxxx
  12. 表间的关系一对多/一对一/多对多关系是怎样建立的?
  13. Hive 修复分区 msck repair table
  14. 原生js做一个简单的仿幻灯片放映
  15. excel文件损坏修复绝招_优盘显示文件或目录已损坏,无法读取,怎么办?!
  16. office 2003也能编辑.docx文档
  17. 基于php的房产中介信息网
  18. Tungsten Fabric如何实现路由的快速收敛?收敛速度有多快?
  19. Windows下用Python获取电脑显示器物理尺寸和PPI
  20. Tensorflow中实现leakyRelu操作(高效)

热门文章

  1. 打包HTML文件基础之webpack配置
  2. shell中参数及带色彩打印
  3. Thinkphp5 模型 验证器执行顺序问题
  4. 华硕飞马3S,日常使用续航测试
  5. yarn========================(类似于node)
  6. Fresco简单的使用—SimpleDraweeView
  7. Tokyo cabinet HDB– 初始化
  8. GAN 优化 Yelp 形象图片广告
  9. 2019全国智能机器人与SLAM技术博士生论坛第二轮通知
  10. ICCV 2019 | 清华等联合提出高精度、高效率点云3D重建网络框架PointMVSNet