[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 计 ...
随机推荐
- 80%的人都不会的,15个Linux实用技巧
熟悉 Linux 系统的同学都知道,它高效主要体现在命令行.通过命令行,可以将很多简单的命令,通过自由的组合,得到非常强大的功能. 命令行也就意味着可以自动化,自动化会使你的工作更高效,释放很多手工操 ...
- elementui 表格 如何使操作中隐藏一个按钮
<el-table-column label="权限"min-width="100"> <template scope="scope ...
- [Fundamental of Power Electronics]-PART I-2.稳态变换器原理分析-2.1 引言
2.1 引言 在上一章中,介绍了降压变换器作为降低直流电压的一种方法,其仅使用非耗散开关,电感器和电容器.开关状态变换产生一个矩形波形\(v_{s}(t)\),如图2.1所示.当开关位于位置1时,该电 ...
- 【近取 key】NABCD分析
项目 内容 这个作业属于哪个课程 2021春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 团队项目-NABCD分析 我在这个课程的目标是 提升工程能力和团队意识,熟悉软件开发的流程 这个作 ...
- kestrel Server的源码分析
今天这一篇博客讲的是.net core 自带的kestrel server,当你开发微服务k8s部署在linux环境下,一般默认开启这个高性能服务,如果大家之前看过我的owin katana的博客,会 ...
- 集群部署时的分布式session如何实现?
session是啥?浏览器有个cookie,在一段时间内这个cookie都存在,然后每次发请求过来都带上一个特殊的jsessionid cookie,就根据这个东西,在服务端可以维护一个对应的sess ...
- Window、Ubuntu传输文件到阿里云服务器
Ubuntu传输文件到阿里云服务器 scp -r file(ubuntu的文件) root(用户名)@xx.xx.xx.xx(公网ip):/home/(目标文件夹) Window传输文件到阿里云服务器 ...
- 浅入kubernetes(5):尝试kubeadm
本篇介绍利用 kubernetes 的命令行工具,快速创建集群实例,完成 hello world 实践. 上一篇试用 minikube 去搭建集群,这一篇将介绍通过 kubeadm 去操作. 命令行工 ...
- Java JFR 民间指南 - 事件详解 - jdk.ObjectAllocationInNewTLAB
重新申请 TLAB 分配对象事件:jdk.ObjectAllocationInNewTLAB 引入版本:Java 11 相关 ISSUES: JFR: RecordingStream leaks me ...
- Ananagrams UVA - 156
Most crossword puzzle fans are used to anagrams - groups of words with the same letters in differe ...