Python中的条件判断语句与循环语句用法小结
作者:goldensun 发布时间:2023-06-27 06:00:53
if语句
>>通用格式
if语句一般形式如下:
if <test1>:
<statements1>
elif <test2>:
<statements2>
else:
<statements3>
另外需要注意的是,Python中是没有switch/case语句的
while循环
while语句是Python语言中最通用的迭代结构,简而言之,只要顶端测试一直计算到真值,就会重复执行一个语句块。
>>一般格式
while <test>:
<statements1>
else:
<statements2>
>>break,continue,pass和循环else
break
跳出最近所在的循环(跳过整个循环语句)。
continue
跳到最近所在循环的开头处(来到循环的首行)。
pass
什么事也不做,只是空占位符语句。
循环else块
只有当前循环正常离开时才会执行(也就是没有碰到break语句)
>>一般循环格式
加入break和continue语句后,while的一般格式变为:
while <test1>:
<statements1>
if <test2>:break
if <test3>:continue
else:
<statements2>
>>pass
pass语句是无运算的占位符,当语法需要语句并且还没有任何实用的语句可写时,就可以使用它。
>>循环else
在while语句中加入else和C/C++中的语法不太一样,这里详细说明一下。else后面的代码只有当循环正常结束时才会执行,如果是用break跳出循环的,这部分代码就不会运行,具体看一个求质数的例子:
x = y // 2
while x > 1:
if y % x == 0:
print(y,'has factor',x)
break
x -= 1
else:
print(y,'is prime')
再看一个对比的例子,没有使用else的情况:
found=False
while x and not found:
if (matchx[0]):
print('Ni')
found=True
else:
x=x[1:]
if not found:
print('not found')
使用else后的情况:
while x:
if (match(x[0])):
print('Ni')
break
else:
print('not found')
for循环
for循环在Python中是一个通用的序列迭代器:可以遍历任何有序的序列对象内元素。for语句可以用于字符串、列表、元组、其他内置可迭代对象。
>>一般格式
for <target> in <object>:
<statements>
else:
<statements>
此处的else的作用和while语句中的一样。另外需要注意的是,当Python运行for循环时,会逐个将序列对象中的元素赋值给目标,然后为每个元素执行循环体。
编写循环的技巧
内置range函数:返回一系列连续增加的整数,可作为for中的索引
内置zip函数:返回并行元素的元组的列表,可用于在for中遍历数个数列
>>循环计数器:while和range
range
当range函数只有一个参数时,会返回从零算起的整数列表,但其中不包括该参数的值。如果传进两个参数,那第一个参数是上边界,第二个参数是下边界。如果传进三个参数时,第三个参数表示步进值。
range提供了一种简单的方法,重复特定次数的动作:
for i in range(5):
print(i,'Pythons')
相应的C++代码则是:
int i;
for(i = 0;i < 5;++i)
{
std::cout<<i<<"Python";
}
>>并行遍历:zip和map
zip会取得一个或多个序列为参数,然后返回元组的列表,将这些序列中的并排的元素配成对。
L1=[1,2,3,4]
L2=[5,6,7,8]
list(zip(L1,L2))
上述代码的执行结果是:
[(1,5),(2,6),(3,7),(4,8)]
当参数的长度不同时,zip会以最短序列的长度为准来截断所得到的元组。
使用zip构造字典:
keys=['spam','eggs','totast']
values=[1,2,5]
D = dict(zip(keys,values))
>>产生偏移和元素:enumerate
enumerate函数一个比较新的内置函数,它能同时返回元素值和偏移值:
s='spam'
for (offset,item) in enumerate(s):
print(item,'appears at offset',offset)


猜你喜欢
- 1. 前言日期选择器用来选择一个或者多个日期,例如选择某个人的生日,再例如选择订单的创建日期,应用还是非常普遍的。本篇就来介绍下Elemen
- 在装这两个的时候出现一些问题,最后总算成功了,记录一下过程环境:win10 64位系统,python3.7.8 ,pip18下载地址:这两个
- 普通方法:爬取梨视频import reimport timeimport randomimport requestsfrom lxml im
- 代码如下:'返回某年总共有多少天 Function DayOfYear(ByVal y) DayOfYear = DatePart(
- 总说由于pytorch 0.4版本更新实在太大了, 以前版本的代码必须有一定程度的更新. 主要的更新在于 Variable和Tensor的合
- 如果不用“with”,那么Python会在何时关闭文件呢?答案是:视情况而定。Python程序员最初学到的东西里有一点就是可以通过迭代法很容
- python提取特定时间段内的数据尝试一下:data['Date'] = pd.to_datetime(data['
- order by 是怎么工作的?表定义CREATE TABLE `t1` ( `id` int(11) NOT NULL, &n
- 一、问题这两天在学习使用flask + SQLAlchemy 定制一个web查询页面的demo ,在测试时,发现查询到的结果显示乱码 。这里
- 实例如下:#coding=utf-8import subprocessfrom time import *import win32apiim
- 本文实例讲述了Python使用win32 COM实现Excel的写入与保存功能。分享给大家供大家参考,具体如下:很久之前通过东拼西凑实现过使
- 1.开发环境 vue+element2.电脑系统 windows 10 专业版3.在开发的过程中,我们总是会使用到 git管理代码!使用方法
- window对文件夹的操作主要包括移动/剪切/复制,本篇文章主要用jQuery来实现,下面一起来了解一下把。1.先看下效果吧!2.在添加一个
- 对于python语言的True和False我们并不陌生了,在学习的过程中常会遇到这样的返回值,那么True真和False假的具体含义是什么?
- 代码如下,U我认为对于新手来说最重要的是学会rnn读取数据的格式。# -*- coding: utf-8 -*-""&q
- 环境准备:1.安装python3.7和相关的依赖并安装redis缓存数据库pip install aliyun-python-sdk-cor
- 没有使用队列,也没有线程池还在学习只是多线程 #coding:utf8 import urllib2,sys,re import threa
- 目录1、系统环境,必要知识2、安装python3.6.53、安装Django4、安装uWSGI5、安装nginx6、MySQL安装配置7、编
- SVG是XML来描述二维图形的语言。SVG可以构造3种类型的图形对象:矢量图形、位图图象和文字。图形对象可被组化、样式化、变形和重组,包括图
- 1、time模块(※※※※)import time #导入时间模块print(time.time()) #返回当前时间的时间戳,可用于计算程