day3-运算符和数据类型

day3-运算符、数据类型和if语句


一、运算符


1. 数学运算符

  • +,-,*,/ — 和数学中的加、减、乘、除一样
  • % — 取余,求余数
    • 应用1:通过对2取余来判断一个数是偶数还是奇数
    • 应用2:通过对10取余来获取一个数的个位数
  • // — 取整,求商取商的整数部分
    • print(5 // 2) #结果为2
  • ** — 求幂运算
    • print(9 ** 0.5) #幂运算可以用来开方

2. 比较运算符

  • python中有>(大于), <(小于), >=(大于等于), <=(小于等于), ==(等于), !=(不等于)几种比较运算符
  • 所有比较运算符的的运算结果都是布尔值(True/False)
  • python中还可以使用多个比较运算符来表示一个范围

3. 逻辑运算符

  • 逻辑运算符有:and,or,not
  • and(逻辑与运算):真真为真,其他为假
    • 应用:如果需要多个条件同时满足,这个时候条件才用and连接
  • or(逻辑或运算):假假为假,其他为真
    • 应用:如果多个条件只要有一个条件满足就可以用or将多个条件连接起来
  • not(逻辑非运算):结果取反
    • 应用:对一个条件进行否定
  • 短路操作:
    • and短路操作:如果and前的结果是False,不会执行and后面的语句,结果直接为False
    • or短路操作:如果or前的结果是True,不会执行or后面的语句,结果直接为True

4. 赋值运算符

  • python中有=,+=,-=,/=,=,%=,//=,*=
  • 赋值符号的左边必须是变量;复合的赋值运算符的左边必须是已经赋值过的变量

5. 运算顺序

  • 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
  • 数学运算符中:** > *, /, //, % > +, -
  • 加()可以改变运算顺序,有()先算口号里的

二、数字类型


1. 数字类型:整型(int)、浮点型(float)、布尔(bool)、复数(complex)

  • 整型(int):包含所有的整数

  • python中整数支持二进制、八进制、十进制、十六进制

    • 十进制:

      a.基数:0,1,2,3,4,5,6,7,8,9

      b.进位:逢10进1

      c.位权:10的n次方

      d.表示方式:直接写的所有的数字都是10进制

      e.转换方式:直接print打印

    • 二进制:

      a.基数:0,1

      b.进位:逢2进1

      c.位权:2的n次方

      d.表示方式:在二进制数的前面加前缀0b/0B,例如0b110

      e.转换方式:bin()-把其他进制的数转换为二进制

    • 八进制:

      a.基数:0,1,2,3,4,5,6,7

      b.进位:逢8进1

      c.位权:8的n次方

      d.表示方式:在八进制数的前面加前缀0o/0O,例如0o110

      e.转换方式:oct()-把其他进制的数转换为八进制

    • 十六进制:

      a.基数:0,1,2,3,4,5,6,7,8,9,a/A,b/B,c/C,d/D,e/E,f/F

      b.进位:逢16进1

      c.位权:16的n次方

      d.表示方式:在十六进制数前加前缀0x/0X,例如0x110

      e.转换方式:hex()-把其他进制的数转换为十六进制

  • 浮点型(float):所有的小数对应的类型

    • 支持科学计数法:3e4,3e-4
  • 布尔值(bool):只有True和False两个值,True实质是1,False实质是0

  • 复数(complex):包括所有由实数和虚数组成的数字,python中用j表示虚部

    • python中直接支持复数运算

2. type()函数

  • type(数据)-返回指定数据对应的类型

3. 类型转换:类型名(数据)

  • 将指定的数据转换为指定类型,返回新的数据
  • int()-转换成整型,数字转换成整型只保留整数部分;不是所有的字符串都能转换成整型,只有去掉引号后本身就是一个整数的字符串才可以
  • float()-转换成浮点型,数字后面加.0;只有去掉引号后本身就是一个数字的才能转换成浮点型
  • bool()-所有的数据都可以转换成布尔值;所有为0、为空的值会转换成False,其他都是True

三、if分支结构


1. if使用的条件

  • 当某段代码是需要在满足某个条件的时候才会执行,这个时候就会使用if分支结构

2. 怎么使用if

  • 语法1

    • if 条件语句:

      ​ 代码块

      a.说明

      if - 关键字,固定写法

      条件语句 - 除了赋值语句以外的所有由结果的表达式

      : - 固定写法

      代码块 - 和if保持一个缩进的一条或多条语句

      b.执行过程

      先判断条件语句是否为True(如果结果不是布尔就先转换成布尔再判断),如果是True就执行代码块,否则不执行,继续执行后面的代码

  • 语法2

    • if 条件语句:

      ​ 代码块1

      else:

      ​ 代码块2

      a.说明

      if - 和上面的一样

      代码块1 - 和if保持一个缩进的一条或多条语句

      else - 关键字,固定写法

      代码块2 - 和else保持一个缩进的一条或多条语句

      b.执行过程

      先判断条件语句是否为True(如果不是也要布尔先转换成布尔),如果是True就执行带买块1,否则就执行代码块2

  • 语法3

    • if 条件语句1:

      ​ 代码块1

      elif 条件语句2:

      ​ 代码块2

      ...

      else:

      ​ 代码块3

      a.说明

      elif - 关键字,固定写法

      b.执行过程

      先判断条件语句1是否为True,如果是True就执行代码块1,然后整个if结束,直接执行其他语句;如果是False,就判断条件语句2是否为True,如果为True就执行代码块2,然后整个if结束;以此类推,如果前面所有条件语句都是False,就只想else中的代码块


3. if嵌套

  • 可以在if结构中再嵌套其他的if语句

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容