![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
第3章 Python变量类型和运算符
文章平均质量分 68
愿与你共信仰
这个作者很懒,什么都没留下…
展开
-
3.22 Python运算符优先级和结合性一览表
优先级和结合性是 Python 表达式中比较重要的两个概念,它们决定了先执行表达式中的哪一部分。Python 运算符优先级所谓优先级,就是当多个运算符同时出现在一个表达式中时,先执行哪个运算符。例如对于表达式a + b * c,Python 会先计算乘法再计算加法;b * c的结果为 8,a + 8的结果为 24,所以 d 最终的值也是 24。先计算*再计算+,说明*的优先级高于+。Python 支持几十种运算符,被划分成将近二十个优先级,有的运算符优先级不同,有的运算符优先级相同,请看下表。原创 2021-02-12 20:07:40 · 666 阅读 · 0 评论 -
3.21 Python三目运算符(三元运算符)用法详解
我们从一个具体的例子切入本节内容。假设现在有两个数字,我们希望获得其中较大的一个,那么可以使用 if else 语句,例如:if a>b: max = a;else: max = b;但是 Python 提供了一种更加简洁的写法,如下所示:max = a if a>b else b这是一种类似于其它编程语言中三目运算符? :的写法。Python 是一种极简主义的编程语言,它没有引入? :这个新的运算符,而是使用已有的 if else 关键字来实现相同的功能。使用原创 2021-02-12 20:07:08 · 710 阅读 · 1 评论 -
3.20 Python逻辑运算符及其用法
高中数学中我们就学过逻辑运算,例如 p 为真命题,q 为假命题,那么“p且q”为假,“p或q”为真,“非q”为真。Python 也有类似的逻辑运算,请看下表:逻辑运算符含义基本格式说明and逻辑与运算,等价于数学中的“且”a and b当 a 和 b 两个表达式都为真时,a and b 的结果才为真,否则为假。or逻辑或运算,等价于数学中的“或”a or b当 a 和 b 两个表达式都为假时,a or b 的结果才是假,否则为真。not逻辑非运算,等价于数原创 2021-02-10 10:44:20 · 309 阅读 · 0 评论 -
3.19 Python比较运算符(关系运算符)
比较运算符,也称关系运算符,用于对常量、变量或表达式的结果进行大小比较。如果这种比较是成立的,则返回 True(真),反之则返回 False(假)。True 和 False 都是 bool 类型,它们专门用来表示一件事情的真假,或者一个表达式是否成立,我们将在《Python bool布尔类型》中详细讲解。Python 支持的比较运算符如表 1 所示。比较运算符说明>大于,如果>前面的值大于后面的值,则返回 True,否则返回 False。<小于,如果&l原创 2021-02-10 10:42:34 · 797 阅读 · 1 评论 -
3.18 Python位运算符详解
Python 位运算按照数据在内存中的二进制位(Bit)进行操作,它一般用于底层开发(算法设计、驱动、图像处理、单片机等),在应用层开发(Web 开发、Linux 运维等)中并不常见。想加快学习进度,或者不关注底层开发的读者可以先跳过本节,以后需要的话再来学习。Python 位运算符只能用来操作整数类型,它按照整数在内存中的二进制形式进行计算。Python 支持的位运算符如表 1 所示。位运算符说明使用形式举 例&按位与a & b4 & 5|原创 2021-02-10 10:41:13 · 254 阅读 · 1 评论 -
3.17 Python赋值运算符(入门必读)
赋值运算符用来把右侧的值传递给左侧的变量(或者常量);可以直接将右侧的值交给左侧的变量,也可以进行某些运算后再交给左侧的变量,比如加减乘除、函数调用、逻辑运算等。Python 中最基本的赋值运算符是等号=;结合其它运算符,=还能扩展出更强大的赋值运算符。基本赋值运算符=是 Python 中最常见、最基本的赋值运算符,用来将一个表达式的值赋给另一个变量,请看下面的例子:#将字面量(直接量)赋值给变量n1 = 100f1 = 47.5s1 = "http://www.baidu.com/pytho原创 2021-02-10 10:38:13 · 345 阅读 · 1 评论 -
3.16 Python算术运算符及用法详解
算术运算符也即数学运算符,用来对数字进行数学运算,比如加减乘除。下表列出了 Python 支持所有基本算术运算符。运算符说明实例结果+加12.45 + 1527.45-减4.56 - 0.264.3*乘5 * 3.618.0/除法(和数学中的规则一样)7 / 23.5//整除(只保留商的整数部分)7 // 23%取余,即返回除法的余数7 % 21**幂运算/次方运算,即返回 x 的 y 次方2 ** 41原创 2021-02-10 10:36:29 · 679 阅读 · 0 评论 -
3.15 Python类型转换,Python数据类型转换函数大全
虽然 Python 是弱类型编程语言,不需要像 Java 或 C 语言那样还要在使用变量前声明变量的类型,但在一些特定场景中,仍然需要用到类型转换。比如说,我们想通过使用 print() 函数输出信息“您的身高:”以及浮点类型 height 的值,如果在交互式解释器中执行如下代码:>>> height = 70.0>>> print("您的身高"+height)Traceback (most recent call last): File "<pyshel原创 2021-02-10 10:33:02 · 645 阅读 · 0 评论 -
3.14 Python转义字符及用法
在《Python字符串》一节中我们曾提到过转义字符,就是那些以反斜杠\开头的字符。ASCII 编码为每个字符都分配了唯一的编号,称为编码值。在 Python 中,一个 ASCII 字符除了可以用它的实体(也就是真正的字符)表示,还可以用它的编码值表示。这种使用编码值来间接地表示字符的方式称为转义字符(Escape Character)。如果你对 ASCII 编码不了解,请猛击:ASCII 编码,将英文存储到计算机ASCII 码一览表,ASCII 码对照表(完整版)转义字符以\0或者\x开头,以原创 2021-02-10 10:31:15 · 268 阅读 · 0 评论 -
3.13 Python格式化字符串(格式化输出
我们在《第一个Python程序——在屏幕上输出文本》中讲到过 print() 函数的用法,这只是最简单最初级的形式,print() 还有很多高级的玩法,比如格式化输出,这就是本节要讲解的内容。熟悉C语言 printf() 函数的读者能够轻而易举学会 Python print() 函数,它们是非常类似的。print() 函数使用以%开头的转换说明符对各种类型的数据进行格式化输出,具体请看下表。转换说明符解释%d、%i转换为带符号的十进制整数%o转换为带符号的八进制整数原创 2021-02-10 10:26:10 · 215 阅读 · 1 评论 -
3.12 Python print()函数高级用法
前面使用 print() 函数时,都只输出了一个变量,但实际上 print() 函数完全可以同时输出多个变量,而且它具有更多丰富的功能。print() 函数的详细语法格式如下:print (value,...,sep='',end='\n',file=sys.stdout,flush=False)从上面的语法格式可以看出,value 参数可以接受任意多个变量或值,因此 print() 函数完全可以输出多个值。例如如下代码:user_name = 'Charlie'user_age = 8#同时原创 2021-02-10 10:23:04 · 281 阅读 · 0 评论 -
3.11 Python input()函数:获取用户输入的字符串
input() 是 Python 的内置函数,用于从控制台读取用户输入的内容。input() 函数总是以字符串的形式来处理用户输入的内容,所以用户输入的内容可以包含任何字符。input() 函数的用法为:str = input(tipmsg)说明:str 表示一个字符串类型的变量,input 会将读取到的字符串放入 str 中。tipmsg 表示提示信息,它会显示在控制台上,告诉用户应该输入什么样的内容;如果不写 tipmsg,就不会有任何提示信息。【实例】input() 函数的简单使用原创 2021-02-10 10:21:24 · 2406 阅读 · 2 评论 -
3.10 Python缓存重用机制
Python 缓冲机制是为提高程序执行的效率服务的,实际上就是在 Python 解释器启动时从内存空间中开辟出一小部分,用来存储高频使用的数据,这样可以大大减少高频使用的数据创建时申请内存和销毁时撤销内存的开销。Python 在存储数据时,会根据数据的读取频繁程度以及内存占用情况来考虑,是否按照一定的规则将数据存储缓存中。那么问题来了,内存重用机制适用于哪些基本数据类型呢?表 1 罗列了 Python 是否将指定数据存入缓存中的规则:数据类型是否可以重用生效范围范围在 [-5,原创 2021-02-10 10:19:02 · 300 阅读 · 0 评论 -
3.9 Python bool布尔类型
Python 提供了 bool 类型来表示真(对)或假(错),比如常见的5 > 3比较算式,这个是正确的,在程序世界里称之为真(对),Python 使用 True 来代表;再比如4 > 20比较算式,这个是错误的,在程序世界里称之为假(错),Python 使用 False 来代表。True 和 False 是 Python 中的关键字,当作为 Python 代码输入时,一定要注意字母的大小写,否则解释器会报错。值得一提的是,布尔类型可以当做整数来对待,即 True 相当于整数值 1,Fals原创 2021-02-10 10:16:25 · 140 阅读 · 0 评论 -
3.8 Python bytes类型及用法
Python bytes 类型用来表示一个字节串。“字节串“不是编程术语,是我自己“捏造”的一个词,用来和字符串相呼应。bytes 是 Python 3.x 新增的类型,在 Python 2.x 中是不存在的。字节串(bytes)和字符串(string)的对比:字符串由若干个字符组成,以字符为单位进行操作;字节串由若干个字节组成,以字节为单位进行操作。字节串和字符串除了操作的数据单元不同之外,它们支持的所有方法都基本相同。字节串和字符串都是不可变序列,不能随意增加和删除数据。bytes 只负原创 2021-02-10 10:14:51 · 498 阅读 · 1 评论 -
3.7 Python字符串使用哪种编码格式?
在实践中,很多初学者都遇到过“文件显示乱码”的情况,其多数都是由于在打开文件时,没有选对编码格式导致的。因此,学习 Python 中的字符或字符串,了解其底层的编码格式是非常有必要的。鉴于有些读者并不了解什么是编码格式,本节先从编码开始讲起。什么是编码?虽然很多教程中有关于编码的定义,但对初学者来说并不容易理解,这里先举一个例子。古代打仗,击鼓为号、鸣金收兵,即把要传达给士兵的命令对应为公认的其他形式,这就和编码有相似之处。以发布进攻命令为例,相比用嗓子喊,敲鼓发出的声音传播的更远,并且士兵听到后也原创 2021-02-10 10:12:36 · 825 阅读 · 0 评论 -
3.6 Python字符串详解(包含长字符串和原始字符串)
若干个字符的集合就是一个字符串(String)。Python 中的字符串必须由双引号" "或者单引号' '包围,具体格式为:“字符串内容”‘字符串内容’字符串的内容可以包含字母、标点、特殊符号、中文、日文等全世界的所有文字。下面都是合法的字符串:“123789”“123abc”“http://www.baidu.com/python/”“C语言中文网成立8年了”Python 字符串中的双引号和单引号没有任何区别。而有些编程语言的双引号字符串可以解析变量,单引号字符串一律原样输出,例如原创 2021-02-10 10:11:01 · 265 阅读 · 0 评论 -
3.5 Python浮点数精度问题(包含解决方案)
前面章节提到,Python 中浮点类型之间的运算,其结果并不像我们想象的那样,例如:>>> 0.1+0.20.30000000000000004>>> 0.1+0.1-0.20.0>>> 0.1+0.1+0.1-0.35.551115123125783e-17>>> 0.1+0.1+0.1-0.20.10000000000000003为什么在计算这么简单的问题上,计算机会出现这样的低级错误呢?真正的原因在于十进制和数原创 2021-02-10 10:04:50 · 721 阅读 · 0 评论 -
3.4 Python复数类型(complex)详解
复数(Complex)是 Python 的内置类型,直接书写即可。换句话说,Python 语言本身就支持复数,而不依赖于标准库或者第三方库。复数由实部(real)和虚部(imag)构成,在 Python 中,复数的虚部以j或者J作为后缀,具体格式为:a + bja 表示实部,b 表示虚部。【实例】Python 复数的使用:c1 = 12 + 0.2jprint("c1Value: ", c1)print("c1Type", type(c1))c2 = 6 - 1.2jprint("c2Va原创 2021-02-10 10:01:13 · 2600 阅读 · 1 评论 -
3.2 Python整数类型(int)详解
整数就是没有小数部分的数字,Python 中的整数包括正整数、0 和负整数。有些强类型的编程语言会提供多种整数类型,每种类型的长度都不同,能容纳的整数的大小也不同,开发者要根据实际数字的大小选用不同的类型。例如C语言提供了 short、int、long、long long 四种类型的整数,它们的长度依次递增,初学者在选择整数类型时往往比较迷惑,有时候还会导致数值溢出。而 Python 则不同,它的整数不分类型,或者说它只有一种类型的整数。Python 整数的取值范围是无限的,不管多大或者多小的数字,Py原创 2021-02-10 09:59:30 · 567 阅读 · 0 评论 -
3.1 Python变量的定义和使用
任何编程语言都需要处理数据,比如数字、字符串、字符等,我们可以直接使用数据,也可以将数据保存到变量中,方便以后使用。变量(Variable)可以看成一个小箱子,专门用来“盛装”程序中的数据。每个变量都拥有独一无二的名字,通过变量的名字就能找到变量中的数据。从底层看,程序中的数据最终都要放到内存(内存条)中,变量其实就是这块内存的名字。和变量相对应的是常量(Constant),它们都是用来“盛装”数据的小箱子,不同的是:变量保存的数据可以被多次修改,而常量一旦保存某个数据之后就不能修改了。Python原创 2021-02-10 09:54:21 · 217 阅读 · 1 评论