运算符和表达式​

1. 运算符的优先级

  • 尽量不要把一个表达式写的过于复杂,如果遇到复杂的需求,则最好分步运算

  • 不要过多的依赖于运算符的优先级,否则代码的可读性太差,在实际的项目开发中,一般采用()

2 数据类型的转换

python是一种强类型语言:要求运算符两边的操作数必须是同一个类型的,否则必须转换

函数名

函数值

int(x,[基数])

将数字或字符串转换为整数,如果x为浮点数,则自动截断小数部分

float(x)

将x转换成浮点型

str(x)

将x转换成字符串,适合人阅读

bool(x)

转换成bool类型 的True或 False

repr(x)

返回一个对象的String格式,适合机器执行

eval(str)

执行一个字符串表达式,返回计算的结果

tuple(seq)

参数可以是元组、列表或者字典,为字典时,返回字典的key组成的集合

list(s)

将序列转变成一个列表,参数可为元组、字典、列表,为字典时,返回字典的key组成的集合

set(s)

将一个可以迭代对象转变为可变集合,并且去重复,返回结果可以用来计算差集x - y、并集x | y、交集x & y

chr(x)

输入一个ASCII码(0-255),返回一个对应的字符。返回值是当前整数对应的ascii字符。

ord(x)

返回一个字符所对应的码值

数值类型 : int、float、bool

bool -> int -> float

3 编码规范

代码编排

缩进4个空格,不能用tab键和空格混合缩进

所有行限制的最大字符数为79

添加适当的空行

空格

二元运算符两边添加一个空格

逗号、分号、冒号后边留一个空格,前面不留

正确: if x == 4: print(x, y); x, y = y, x
错误:  if x == 4 : print x , y ; x , y = y , x

紧跟在小括号,中括号或者大括号后 不要留空格

正确: spam(ham[1], {eggs: 2})
错误:  spam( ham[ 1 ], { eggs: 2 } )

4 if分支(***)

4.1 单一分支

if 条件表达式:
   【代码块】
【后续代码】
执行流程:如果条件表达式为真,则执行【代码块】。否则不执行,直接执行if语句后面的【后续代码】
注意:
  【代码块】必须缩进
   单if语句可以嵌套

4.2 双向分支

if 条件表达式:
   【语句块A】
else:
   【语句块B】
【后续代码】
执行流程:如果条件表达式为真,执行【语句块A】然后执行【后续代码】,否则执行【语句块B】,然后再执行【后续代码】,二选一,不可能既执行A有执行B
注意:
   【语句块A】和【语句块B】必须缩进
   if-else可以嵌套

4.3 多向条件分支

if 条件1:
   【代码段1】
elif 条件2:
   【代码段2】
............
elif 条件n:
    【代码段n】
else:
  【else语句块】
【后续代码】
执行流程:多选一,如果满足条件1,执行【代码段1】,然后跳出if-elif语句,执行【后续代码】,否则判断是否满足条件2,如果满足执行【代码段2】,然后跳出if-elif语句,执行【后续代码】...。如果所有条件都不满足,执行【else语句块】,然后再执行【后续代码】。
注意:else是可选的,可以写也可以不写。

5 循环(***)

5.1 概念

广义:一个周期现象或者重复出现的情况,这种状态被称为循环

狭义:在满足条件的情况下,反复执行某一段代码,在编程语言中出现的这种现象被称为循环。被反复执行的这段代码被称为循环体

当反复执行某段代码时,需要在合适的时机将循环停止下来,否则会产生死循环

Python中提供的循环语句:while语句,for-in语句

5.2 使用

5.2.1 while语法

while 表达式:
   循环体

工作原理:遇到while语句时,首先计算表达式的值,如果表达式的值为假,则跳过整个while语句,继续执行下面的代码;如果表达式的值为真,则执行循环体

5.2.2 while-else

while 表达式:
    循环体
else:
   【else语句块】

说明:当while语句执行完成之后,执行【else语句块】,如果用break跳出循环则不执行else

5.2.3死循环

在循环语句中,表达式永远为真的循环

while T

while 1:
    #循环体

5.2.4 while语句的嵌套

while 条件1:     #外层循环
     【语句块A】
      while 条件2:   #内存循环
            【语句B】

执行流程:首先判断外层循环的条件1,如果为真,则执行循环体中的【语句块A】,执行内层循环,判断条件2是否成立,如果成立,执行内层循环的【语句块B】,执行完内层循环后,重新判断外层循环条件....

  • 特点:外层循环走一步,内层循环执行一遍

  • 外层循环和内层循环的循环变量必须不同

演示:

打印九九乘法表

5.3. break和continue、exit()

continue 语句用来跳过当前循环的剩余语句,然后重新判断循环条件,开启下一轮循环。continue只能出现在while和for循环中

break用于结束当前循环。只对当前这一重循环起作用。break只能出现在循环中

exit()结束程序

Day03-运算符和表达式相关推荐

  1. 《C#精彩实例教程》小组阅读06 -- C#运算符与表达式

    本微信图文介绍了C#的运算符与表达式.

  2. 第三课.运算符与表达式

    第三课目录 运算符与表达式 算术运算符 关系运算符 逻辑运算符 德摩根律 使用断言assert 位运算符 补码 补码与位运算 赋值运算符 杂项运算符 运算符与表达式 数学是科技发展的基础,数学公式的意 ...

  3. python 除法取模_Python的运算符和表达式(上)

    上一篇文章霖小白分享了Python中的字符串和数字类型,这一篇让我们回到小学时代的数学,因为霖小白这一篇分享的是关于Python程序中的运算符和表达式,这一次先分享算术运算符和算术表达式,比较运算符和 ...

  4. c语言程序计算p q真值表,C语言程序设计第2章数据类型﹒运算符和表达式.ppt

    C语言程序设计第2章数据类型﹒运算符和表达式 教学目标 掌握C语言标识符的组成 理解C语言的基本数据类型 掌握变量定义的方法 掌握常用的运算符的使用 掌握混合运算的数据转换方法 2.1 C语言的数据类 ...

  5. 【C语言学习】《C Primer Plus》第5章 运算符、表达式和语句

    学习总结 1.有了一定的语言基础,运算符和表达式这些都大同小异,无外乎赋值运算符(=).算术运算符(+.-.*./.%.++.--)和其他的一下运算符(sizeof.(type)). 2.声明一个参数 ...

  6. python运算符和表达式

    运算符和表达式 在 Python 中你会写大量的表达式.表达式由运算符和操作数组成.像 2+3 就是一个表达式. 知识点 关系/逻辑运算 表达式 类型转换 实验步骤 1. 运算符 运算符是一些符号,它 ...

  7. 数据类型,运算符和表达式03 - 零基础入门学习C语言04

    第二章:数据类型,运算符和表达式03 让编程改变世界 Change the world by program 字符型数据 字符型数据包括字符常量和字符变量 字符常量: 是用单引号括起来的一个字符. 例 ...

  8. c语言表达式用法,C语言开发之运算符、表达式用法

    C语言中运算符和表达式数量之多,在高级语言中是少见的.正是丰富的运算符和表达式使C语言功能十分完善.这也是C语言的主要特点之一.C语言的运算符不仅具有不同的优先级,而且还有一个特点,就是它的结合性.在 ...

  9. c语言程序设计运算符及表达式,c语言程序设计3第3章运算符和表达式

    1.第3章 运算符和表达式,3.1 表 达 式 3.2 运算符及表达式 3.3 运算符优先级和结合性,3.1 表 达 式,C语言的表达式分为基本表达式和复杂表达式. 基本表达式是由以下单项构成的,即: ...

  10. 二进制补码求值用c语言,C语言程序设计第2章数据类型.运算符与表达式.ppt

    C语言程序设计第2章数据类型.运算符与表达式 教学目标 掌握C语言标识符的组成 理解C语言的基本数据类型 掌握变量定义的方法 掌握常用的运算符的使用 掌握混合运算的数据转换方法 2.1 C语言的数据类 ...

最新文章

  1. 008_Restfull请求风格
  2. Netty实战六之ChannelHandler和ChannelPipeline
  3. 推荐搜索炼丹笔记:MiNet阿里跨域点击率CTR预估
  4. symbol MC 3090 upgrade to symbol MC 3190
  5. 通过rpm安装postgresql-9.6无法远程连接的问题
  6. window 任务管理器
  7. C语言学习:%d、2d、02d、.2d的区别
  8. Java用链表写图书管理_C语言链表实现图书管理系统
  9. potainer 日志_日志系统落地:制定日志规范
  10. spring配置数据库
  11. 云小课 | DSC:快速识别敏感数据并脱敏
  12. 计划任务中使用NT AUTHORITY\SYSTEM用户和普通管理员用户有什么差别
  13. 乱码插入mac mysql汉字乱码问题解决
  14. 运维专家写给运维工程师的 6 条人生忠告
  15. C#基础精华05(正则表达式,)
  16. Linux基础(八)服务器RAID及配置
  17. Origin8.1完全安装教程,安装包pojie包
  18. CSP2019滚粗记
  19. 虚拟机安装和优盘启动盘制作
  20. c语言和python区别,python和c语言的区别是什么

热门文章

  1. NVDKC6416平台H.264算法优化
  2. 解决:A component required a bean of type ‘javax.jms.Queue‘ that could not be found.
  3. springboot 缓存ehcache的简单使用
  4. 从一个OutOfMemoryError 学会了分析Java内存泄漏问题
  5. mysql 索引的统计
  6. 【BZOJ 4103】 [Thu Summer Camp 2015]异或运算 可持久化01Trie
  7. Gearman 启动日志文件提示协议出错的BUG
  8. ie7浏览器传输中文的问题
  9. [转]Messenger:使用消息的跨进程通信
  10. 第三章 阴阳的工作机制(1)