python之分支和循环
Day 1-night
- 三元操作符
- 语法:a=x if 条件 else y 即:当条件为True时,a的值赋值为x,否则赋值为y
- eg:small=x if x<y else y
- <=> if x<y: small=x
else: small=y x=input("please input x:")
y=input("please input y:")
small=x if x<y else y
print(small)
- 断言(assert)
- 当assert这个关键字后的条件为假时,程序自动崩溃并抛出AssertionError的异常
- eg:assert 3<4 正常
eg:assert 4<3
报错:
Traceback (most recent call last):
File "1.py", line 5, in <module>
assert 4<3
AssertionError- 用于在程序中置入检查点。当需要确保程序中的某个条件一定为真,才能让程序正常工作时,assert关键字作用很大
- if 语句
- 简单if语句结构:if conditionoal_test:
do something - if-elif-else语句(其中else可省略)
age=12
if age < 4:
print("Your admission cost is $0.") #4岁以下免费
elif age <18:
print("Your admission cost is $5.") #4~18岁收费5美元,半价
else:
print("Your admission cost is $10.") #18岁(含)以上收费10美元,全价
8
9 if age < 4: #精简版
10 price = 0
11 elif age < 18:
12 price = 5
13 elif age < 65: #多个elif语句
14 price = 10
15 else: #年龄超过65,半价优惠
16 price = 5
17 print("Your admission cost is $" + str(price) + ".")
- 简单if语句结构:if conditionoal_test:
- while循环语句
- while 条件:
循环体 - for循环语句
语法格式:
for iterating_var in sequence:
statements(s)- for 迭代变量 in 遍历序列
执行语句... - 执行过程: 依次将‘遍历序列’的每一个值传递给‘迭代变量’,每传递一个值时执行一次内部语句,直至‘遍历序列’的最后一个元素,for语句退出。
- 遍历序列可以是字符串(str),列表(list),元组(tuple)…
- range() 内建函数
- 语法格式:
ranage([start,]stop[,step=1]) 中括号括起来表示该参数可选,step=1表示第三个参数的默认值为1 - 该BIF的作用为:生成一个从start参数的值开始,到stop参数的值结束的数字序列。常与for循环结合用于计数循环
- 只传递一个参数的range(),eg:range(5),即:将第一个参数默认值设置为0,生成0~5的所有数字(包括0不包括5)
- 也有只传递两个参数的range(),eg:range(2,9) 输出2~9(不包括9)
- 传递三个参数的range(),eg:range(1,10,2) 输出1,3,5,7,9
- break 语句
- 终止当前循环,跳出循环体
- continue 语句
- 终止本轮循环并开始下一轮循环(在开始下一轮循环之前,会先测试循环条件)
- Question:
for i in range(10):
if i%2!=0:
print(i)
continue
i+=2
print(i)执行结果为 1 3 5 7 9 9 (省略换行)
不懂运行方式?待解决
- Answer:
for i in range(10):
if i%2!=0:
print(str(i)+'YES')
continue
i+=2
print(str(i)+'NO')
print(i)
执行结果为 2NO 1YES 4NO 3YES 6NO 5YES 8NO 7YES 10NO 9YES 9
因此,通过对比我们可得知python for循环的执行机制:在range内是一个从0~10(不包括10)的列表,每执行一次for条件判断,就依次将0~9赋值给i,也就是说,i最终的值只在for条件判断中改变,循环体内i的值改变不会产生影响,即不保留到下一次循环;而对比C语言,for(i=0;i<10;i++),循环体内i的值可保留至下一次,在判断条件是,只需i++
即,对于该题来说,首先,i被赋值为0,偶数,不满足if条件,执行i+=2,i=2;下一次for循环,i被赋值为1,奇数,满足if条件,输出1,continue,结束本次循环;接着,i被赋值为2,偶数,...
python之分支和循环的更多相关文章
- Python(四) 分支、循环、条件与枚举
一.什么是表达式 表达式(Expression)是运算符(operator)和操作数(operand)所构成的序列 二.表达式的优先级 三.表达式优先级练习 优先级同级 从左往右计算 1 or 2 a ...
- 【03】Python:分支和循环
写在前面的话 在写代码的时候,我们的代码不可能总是一行一行语句的堆叠,有些时候我们需要对一个事物进行判断,或者很大一组数据需要循环挨个处理.这些不可能让我们一步一步的去写.所以有了接下来的分支结构和循 ...
- python 04 分支和循环
创建一个框架 名字.py 打飞机游戏 加载音乐 播放音乐 我打飞机诞生 inter=0 while true: if 用户是否惦记了关闭: 退出程序 bleak inter+=1 if inter ...
- python 条件分支与循环
一.if判断: 语法一: if 条件: # 条件成立时执行的子代码块 代码1 代码2 代码3 示例: sex='female' age=18 is_beautiful=True if sex == ' ...
- python入门(三):分支、循环、函数
1.分支 if循环格式:if condition_1: statement_block_1elif condition_2: statement_block_2else: statement_bloc ...
- Python代码结构——顺序、分支、循环
## 顺序结构 - 按照从上到下的顺序,一条语句一条语句的执行,是最基本的结构 ## 分支结构 if condition: statement statement ... elif condition ...
- Python学习杂记_4_分支和循环
分支 和 循环 分支和循环这俩结构在各语言中都有着很重要的地位,当然我之前都没有学好,这里总结一下在Python学习中对这俩结构的认识. 分支结构 # 单分支 if 条件判断: 执行语句… # 双分支 ...
- 零基础入门学习Python(9)--了不起的分支和循环3
前言 本节继续介绍分支和循环 知识点 while循环 Python while循环与if条件分支有点类似,在条件为真的情况下,执行某一段指定的代码.不同的是只要条件为True,while循环就会一直重 ...
- 零基础入门学习Python(7)--了不起的分支和循环1
前言 我们今天的主题,是了不起的分支和循环,为什么不说c语言,Python了不起,而对分支和循环这两个知识点那么崇拜呢? 我们之前的几节课里也接触到了分支和循环,大家思考一下,如果我们的程序没有分支和 ...
随机推荐
- PostgreSQL学习笔记——摘要
因为PostgreSQL和MySQL.DB2等数据库均遵循SQL语法,所以这篇随笔仅记录一些PostgreSQL中和别的数据库有差别或之前学习中遗漏的地方,以及一些我觉得比较重点的地方. 通过psql ...
- ubuntu 12.04 下LVS的一些搭建心得和资料整理
最近项目上需要使用到IPVS进行负载均衡,针对外部传来的HTTP请求,分摊到多台服务器上进行处理,所以看了一下这方面的资料,在这里纪录一下. Lvs是基于IP层和内容分发请求的负载均衡方法(所以也可以 ...
- ubuntu desktop 登录root账户
有一些操作,登录root账户比较方便,但是ubuntu桌面版默认不允许这样,需要更改root账户的默认密码才可以登录,解决方法是按以下顺序输入: sudo passwd <你现在的用户的密码&g ...
- 【miscellaneous】理解Gstreamer架构
本文给出了Gstreamer的总体设计.通过阅读本文可以了解Gstreamer的内部工作原理.本文编译自gstreamer源码中的文档,原文在源码中的位置是/gstreamer/docs/design ...
- FCM实现手机推送,推送的方式,真机调试
FCM实现手机 1 下载Androidstudio 3.2 版本,之后新建一个项目 2 创建完项目之后查找文件AndroidMainifest.xml 3 访问网站注册一个自己的firebase的 ...
- 如何写出优美的 C 代码 面向对象的 C
基础知识 结构体 除了提供基本数据类型外,C 语言还提供给用户自己定制数据类型的能力,那就是结构体,在 C 语言中,你可以用结构体来表示任何实体.结构体正是面向对象语言中的类的概念的雏形,比如: ty ...
- eclipse搭建springboot的项目
记录一次自己搭建springboot的经历 springboot项目创建 这里借用别的博主分享的方法 https://blog.csdn.net/mousede/article/details/812 ...
- ElasticSearch入门-基本概念介绍以及安装
Elasticsearch基本概念 Elasticsearch是基于Lucene的全文检索库,本质也是存储数据,很多概念与传统关系型数据库类似. 传统关系型数据库与Elasticsearch进行概念对 ...
- WIN10更换无线网卡后WIFI无法正常启用
这里根据自己经历提供几个方案: 首先我们要确定这两个地方正常(表示网卡能识别.驱动安装好:有无线开关没打开的朋友请出门右转): 方案一:万能的重启,不觉得麻烦的就多重启几遍.大力出奇迹! 方案二:然后 ...
- 【Docker】:docker安装ELK(logstash,elasticsearch,kibana)
一:安装logstash 1.拉取镜像 docker pull logstash:5.6.11 2.创建目录 mkdir /docker/logstash cd /docker/logstash 3. ...