python基础条件和循环
一、if语句
1、if后表达式返回值为true则执行其子代码块,然后此if 语句到此终结,否则进入下一分支判断,直到满足其中一个分支,执行后终结if 2、expression可以引入运算符:not,and,or,is,is not 3、多重expression为加强可读性最好用括号包含 4、if与else缩进级别一致,表示是一对 5、elif与else都是可选的 6、一个if判断最多只有一个else但是可以有多个elif 7、else表示if判断的终结 8、expession可以是返回值为布尔值的表达式(例如:x>1,x is not None)的形式,也可以是单个标准对象(例如:x=1;if x :print('ok')) 9、所有标准对象均可以用于布尔测试,同类型的对象之间可以比较大小。每个对象天生具有布尔True或False值。空对象、值为零的任何数字或者Null对象None的布尔值都是False。
案列:
#!/usr/bin/env python
#_*_coding:utf-8_*_ '''
提示输入用户名和密码 验证用户名和密码
如果错误,则输出用户名或密码错误
如果成功,则输出 欢迎,XXX!
''' import getpass name=input('用户名: ')
passwd=getpass.getpass('密码: ') if name == 'alex' and passwd == '':
print('土豪里边请')
else:
print('土鳖请走开') 用户登陆验证
二、while语句
while循环的本质就是让计算机在满足某一条件的前提下重复做同一件事情(既while循环为条件循环,包含:1、条件计数循环,2、条件无限循环) 这一条件是指:条件表达式 同一件事是指:while循环体包含的代码块 重复的事情例如:从1加到1000.求1-1000内所有奇数,服务等待链接等 计数循环 count=0
while (count < 9):
print('the loop is %s' %count)
count+=1
无限循环
count=0
while True:
print('the loop is %s' %count)
count+=1
条件为真就重复执行代码,直到条件不在为真,而if是条件为真,只执行一次代码就结束了
while有计数循环和无限循环两种,无限循环可以用于某一服务的主程序一直处于等待被连接状态
break代表跳出本层循环,continue代表跳出本次循环
while循环在没有被break打断的情况下结束,会执行else后代码
案列:
import getpass account_dict={'alex':'','eric':'','rain':''}
count = 0
while count < 3:
name=input('用户名: ').strip()
passwd=getpass.getpass('密码: ')
if name in account_dict:
real_pass=account_dict.get(name)
if passwd == real_pass:
print('登陆成功')
break
else:
print('密码输入错误')
count+=1
continue
else:
print('用户不存在')
count+=1
continue
else:
print('尝试次数达到3次,请稍后重试') 用户登陆验证
三、for语句
for循环提供了python中最强大的循环结构(for循环是一种迭代循环机制,而while循环是条件循环,迭代部分重复相同的逻辑操作,每次操作都是基于上一次的结果而进行的) 迭代对象:就是一个具有next()方法的对象,obj.next()每执行一次,返回一行内容所有内容迭代完后, 迭代器引发一 个 StopIteration 异常告诉程序循环结束. for 语句在内部调用 next() 并捕获异常. for循环遍历迭代器或可迭代对象与遍历序列的方法并无二致,只是在内部做了调用迭代器next(),并捕获异常,终止循环的操作 很多时候你根本无法区分for循环的是序列对象还是迭代器 for语法小结: for循环为迭代循环 可遍历序列成员(字符串,列表,元祖) 可遍历任何可迭代对象(字典,文件等) 可以用在列表解析和生成器表达式中 break,continue,else在for中用法与while一致
案例:
albums = ('Poe', 'Gaudi', 'Freud', 'Poe2')
years = (1976, 1987, 1990, 2003) #sorted:排序
for album in sorted(albums):
print(album) #reversed:翻转
for album in reversed(albums):
print(album) #enumerate:返回项和
for i in enumerate(albums):
print(i)
#zip:组合
for i in zip(albums,years):
print(i)
python基础条件和循环的更多相关文章
- Python基础 条件、循环
1.条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. if if语句执行有个特点,它是从上往下判断,如果在某个判断上是True,把该判断对应的 ...
- Python 全栈开发三 python基础 条件与循环
一. 条件语句 python条件语句是根据一条或多条语句的执行结果的真假(True Or False)来决定代码块的执行. 而执行内容可以多行,以缩进来区分表示同一范围. 1.Python判断条件真假 ...
- Python基础:条件与循环
条件语句 除了 boolean 类型的数据,条件判断最好是显性的 if i != 0: ... 而不是只写出变量名: if i: ... For循环与While循环 通常来说,如果你只是遍历一个已知的 ...
- python基础 条件和循环
Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...
- Python基础【while循环】
Python基础[while循环] 1.while循环: 格式 while 条件: ...... print(......) 注意,在while语句也可以嵌套else,但是else不执行循环,执行后直 ...
- Python基础(条件判断和循环) if elif else for while break continue;
条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= ...
- Python基础——条件判断
Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ 到目前为止,Python基础系列的文章中的程序都是一条一条语句顺序执行的.在本章中,我会重点介绍让程序选择是否执行语 ...
- Python基础——for/while循环
Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ 上学期间,常常遇到这样的情景:为了惩罚学生,老师会说:"XXX,你先去操场上跑10圈再回来继续反省.&qu ...
- Python基础入门-For循环
For循环的功能比较强大,他可以帮助我们实现很多重复性的工作.而且for循环能迭代不同的数据结构.他的应用也十分的广泛,作为初学者,我们需要对循环的概念多加理解和练习.接下来我们就来学习for循环的一 ...
随机推荐
- java第十三次作业
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相内关容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu ...
- 201521123025《java程序设计》第13周学习总结
1. 本周学习总结 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 从结果来看, ...
- 201521123057《Java程序设计》第14周学习总结
0. 本周课程设计发布 Java课程设计 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 数据库基本操作(目前为止主要介绍了表的基本操作) 创建表 CREATE ...
- 201521123110《Java程序设计》第10周学习总结
1. 本周学习总结 2. 书面作业 1.finally 1.1 截图你的提交结果(出现学号) 1.2 4-2中finally中捕获异常需要注意什么? finally块中的代码在正常情况下一定会执行,所 ...
- java :equals()和hashcode()方法的结合使用
哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率.在Java的Object类中有一个方法: 1 public native int hashCode(); 根据 ...
- 自动化测试之 seleniumIDE,Selenium1,selenium2和testNG入门
由于前期三个月公司的项目一直在改需求阶段,一直是手动测试,现在项目雏形以及基本页面功能都确定下来,为了不让自己陷入天天测同一功能的无限循环中,故开始自动化测试的学习之路,也为自己以后的发展铺铺路. 一 ...
- 由一次自建库迁移到阿里云RDS引发的性能问题。
刚入职一互联网公司,项目正好处于计划上线的时间,由于公司前不久已经购买了rds服务,领导决定尝试一番! 当然,新事物.云事物还是要谨慎的.安排我先把测试环境数据库迁移上去,这里吐槽一下,往rds迁移一 ...
- spring依赖注入中接口的问题
问题描述:一个接口,有俩个实现类当注入时候名字不同时,会出现不同的情况 action层: @Controller("userAction") @Scope("protot ...
- 02.python基础知识_02
数据类型 1.整型 2.布尔值 3.字符串 4.列表 5.字典 6.集合 1.int(整型) i = 2 print(type(i)) 输出:<class 'int'> 2.bool(布尔 ...
- VirtualBox安装linux mint教程
准备工作: 1.VirtualBox安装包,官方下载页面. 2.linux mint镜像iso文件,官方下载页面. 安装过程: 1.打开VirtualBox后点击新建,在弹出界面选择专家模式,类型选择 ...