[Python] 条件 & 循环
条件语句
- 不加 ()
- 结尾加 :
- elif else 和 if 成对使用
- 省略判断条件
- String:空字符串为False,其余为True
- int:0为False,其余为True
- Bool:True为True,False为False
- list/tuple/dict/set:iterable为空解析为False,其余为True
- Object:None解析为False,其余为True
循环语句
- 可迭代的数据结构可通过如下方式遍历
- for item in <iterable>:
- ...
- 字典的遍历
1 d = {'name' : 'jason', 'dob': '2000-01-01', 'gender': 'male' }
2 for k in d:
3 print(k)
4 print(" ")
5 for v in d.values():
6 print(v)
7 print(" ")
8 for k,v in d.items():
9 print('key:{}, value:{}'.format(k,v))
- 通过索引遍历
1 # 方法1
2 l = [1,2,3,4,5,6,7]
3 for index in range(0, len(l)):
4 if index < 5:
5 print(l[index])
6
7 # 方法2
8 l = [1,2,3,4,5,6,7]
9 for index,item in enumerate(l):
10 if index < 5:
11 print(item)
- continue和break
1 #筛选出价格小于1000,且颜色不是红色的所有“产品--颜色”组合
2 # 不使用continue
3 name_price = {'book_1':120,'book_2':500,'book_3':2000,'book_4':200}
4 name_color = {'book_1':['red','blue'],'book_2':['green','blue'],'book_3':['red','blue']}
5
6 for name, price in name_price.items():
7 if price < 1000:
8 if name in name_color:
9 for color in name_color[name]:
10 if color != 'red':
11 print('name:{},color:{}'.format(name,color))
12 else:
13 print('name:{},color:{}'.format(name,'None'))
14
15 # 使用continue
16 for name, price in name_price.items():
17 if price >= 1000:
18 continue
19 if name not in name_color:
20 print('name:{},color:{}'.format(name,'None'))
21 continue
22 for color in name_color[name]:
23 if color == 'red':
24 continue
25 print('name:{},color:{}'.format(name,color))
- 效率
- for:range()是C语言写的,效率较高
- while:i += 1 会设计对象创建和删除(相当于i = new int(i+1))
- 简化写法
1 #按逗号分割单词,去掉首位空字符,过滤掉长度小于等于5的单词,最后返回单词组成的列表
2 text = ' Today, is, Sunday'
3 text_list = [s.strip() for s in text.split(',') if len(s.strip()) >= 5]
4 print(text_list)
1 # 计算函数值y = 2*|x| + 5
2 # expression1 if condition else expression2 for item in iterable
3 # 等价于:
4 # for item in iterable:
5 # if condition:
6 # expression1
7 # else:
8 # expression2
9 x = [-1,0,1,2,3,4]
10 y = [value * 2 + 5 if value > 0 else -value * 2 + 5 for value in x]
11 print(y)
[Python] 条件 & 循环的更多相关文章
- Python条件循环判断
1.条件判断语句 Python中条件选择语句的关键字为:if .elif .else这三个.其基本形式如下: 1 2 3 4 5 6 7 8 9 age_of_cc = 27 age = int( ...
- Python 条件判断 循环
age = 20 if age >= 18: print('your age is', age) print('adult') 根据Python的缩进规则,如果if语句判断是True,就把缩进的 ...
- python条件判断与循环
条件判断 1.python缩进规则: 如果if语句判断是True,就把缩进的语句执行了,否则,什么也不做,比如: age=20 if age >= 18: print('your age is' ...
- python学习笔记2_条件循环和其他语句
一.条件循环和其他语句 1.print和import的更多信息. 1.1.使用逗号输出 //print() 打印多个表达式是可行的,用逗号隔开. 在脚本中,两个print语句想在一行输出 ...
- python 条件与循环
一.if语句 1.1 功能 计算机又被称作电脑,意指计算机可以像人脑一样,根据周围环境条件(即expession)的变化做出不同的反应(即执行代码) if语句就是来控制计算机实现这一功能 1. ...
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 7. 条件循环
条件循环能够让程序在条件成立时(即为真时)重复执行循环体中的语句.如果条件一直成立(即永远不会为假),则循环会一直进行下去,不会停止.如果初始时,条件不成立,则循环 1 次也不会执行.Python 中 ...
- Python基础教程之第5章 条件, 循环和其它语句
Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 bit (Intel)] on win32 #Chapter 5 条件, 循环 ...
- Python - 条件控制、循环语句 - 第十二天
Python 条件控制.循环语句 end 关键字 关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下: Python 条件语句是通过一条或多条语句的执行结果(True 或 ...
- python条件与循环-循环
1 while语句 while用于实现循环语句,通过判断条件是否为真,来决定是否继续执行. 1.1 一般语法 语法如下: while expression: suite_to_repeat 1.2 计 ...
随机推荐
- Springboot进行Http接口交互实现邮件告警
本项目采用idea编辑器,依赖maven环境,相关搭建请自行百度一.引入相关依赖 本文Http接口交互使用hutool工具类与阿里FastJson解析报文. <dependencies&g ...
- 全网最详细的Linux命令系列-cd命令
Linux cd 命令可以说是Linux中最基本的命令语句,其他的命令语句要进行操作,都是建立在使用 cd 命令上的. 所以,学习Linux 常用命令,首先就要学好 cd 命令的使用方法技巧. 命令格 ...
- 用优先队列构造Huffman Tree及判断是否为最优编码的应用
前言 我们知道,要构造Huffman Tree,每次都要从堆中弹出最小的两个权重的节点,然后把这两个权重的值相加存放到新的节点中,同时让这两个节点分别成为新节点的左右儿子,再把新节点插入到堆中.假设节 ...
- A. 【例题1】数字反转
题目解析 字符串的基础操作,注意判断零即可 #include <bits/stdc++.h> using namespace std; int i; char c[15]; int mai ...
- Dynamics CRM安装教程六:CRM产品安装
接下来就要开始进行CRM产品的安装了 首先要安装IIS,以及.NET FrameWork4.6及相关功能 打开服务器管理器,在添加角色功能向导中勾选IIS,点击添加功能 默认下一步 选择角色服务这里的 ...
- OO_Unit4 UML模型化设计总结
OO_Unit4 UML模型化设计总结 任务简介:本单元在介绍了UML中几种基本的模型图元素的基础上,通过实现课程组提供的官方接口来完成自己的UML解析器. 架构设计 本单元最终的整体架构图如下(不包 ...
- 【剑指offer】9:变态跳台阶
题目描述: 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 解题思路: 先考虑最简单情况就是只有一级台阶,仅有一种跳法.两级台阶,有两种 ...
- python中栈的实现
栈是一种线性数据结构,用先进后出或者是后进先出的方式存储数据,栈中数据的插入删除操作都是在栈顶端进行,常见栈的函数操作包括 empty() – 返回栈是否为空 – Time Complexity : ...
- Java(152-170)【继承、super、this、抽象类】
1.继承的概述 继承是多态的前提 继承主要解决的问题是共性抽取 2.继承的格式 在继承的关系中,子类可以当做父类看待 代码复用的效果 package cn.itcast.day09.demo01; / ...
- 「HTML+CSS」--自定义加载动画【017】
前言 Hello!小伙伴! 首先非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出- 哈哈 自我介绍一下 昵称:海轰 标签:程序猿一只|C++选手|学生 简介:因C语言结识编程,随后转入计算机 ...