if判断

if判断其实就是让计算机模拟人的判断

if

if 条件:
代码1
代码2
代码3
...
# 代码块(同一缩进级别的代码,例如代码1、代码2和代码3是相同缩进的代码,这三个代码组合在一起就是一个代码块,相同缩进的代码会自上而下的运行)

if...else

if...else表示if成立代码成立会干什么,else不成立会干什么。

if 条件:
代码1
代码2
代码3
...
else:
代码1
代码2
代码3
...

if...elif...else

if...elif...else表示if条件1成立干什么,elif条件2成立干什么,elif条件3成立干什么,elif...否则干什么。

练习1:成绩评判
  • 如果 成绩>=90,打印"优秀"
  • 如果 成绩>=80 并且 成绩<90,打印"良好"
  • 如果 成绩>=70 并且 成绩<80,打印"普通"
  • 其他情况:打印"差"
# 成绩评判
score = input("your score: ")
score = int(score) if score >= 90:
print('优秀')
# elif score >= 80 and score < 90:
elif score >= 80:
print('良好')
# elif score >= 70 and score < 80:
elif score >= 70:
print('普通')
else:
print('差')

if的嵌套

# if的嵌套
cls = 'human'
gender = 'female'
age = 18
is_success = False if cls == 'human' and gender == 'female' and age > 16 and age < 22:
print('开始表白')
if is_success:
print('那我们一起走吧...')
else:
print('我逗你玩呢')
else:
print('阿姨好')

while循环

循环就是一个重复的过程,我们人需要重复干一个活,那么计算机也需要重复干一个活。

while 条件
code 1
code 2
code 3
...

while+break

break的意思是终止掉当前层的循环,执行其他代码。

while True:
user_db = 'nick'
pwd_db = '123' inp_user = input('username: ')
inp_pwd = input('password: ')
if inp_user == user_db and pwd_db == inp_pwd:
print('login successful')
break
else:
print('username or password error') print('退出了while循环')

while+continue

continue的意思是终止本次循环,直接进入下一次循环。

continue不能加在循环体的最后一步执行的代码,因为代码加上去毫无意义

while循环的嵌套

# 退出双层循环的while循环嵌套
while True:
user_db = 'nick'
pwd_db = '123' inp_user = input('username: ')
inp_pwd = input('password: ') if inp_user == user_db and pwd_db == inp_pwd:
print('login successful') while True:
cmd = input('请输入你需要的命令:')
if cmd == 'q':
break
print(f'{cmd} 功能执行')
break
else:
print('username or password error') print('退出了while循环')
tag控制循环的退出
# tag控制循环退出
tag = True
while tag:
user_db = 'nick'
pwd_db = '123' inp_user = input('username: ')
inp_pwd = input('password: ') if inp_user == user_db and pwd_db == inp_pwd:
print('login successful') while tag:
cmd = input('请输入你需要的命令:')
if cmd == 'q':
tag = False
print(f'{cmd} 功能执行')
else:
print('username or password error') print('退出了while循环')

while+else

while+else:else会在while没有被break时才会执行else中的代码。

for循环

for循环字典会取出key值

info = {'name': 'nick', 'age': 19}

for item in info:
# 取出info的keys
print(item)

for循环range,包含1但是不包含10

print(list(range(1, 10)))
# for循环按照索引取值
name_list = ['nick', 'jason', 'tank', 'sean']
# for i in range(5): # 5是数的
for i in range(len(name_list)):
print(i, name_list[i])
for+break

for循环调出本层循环

# for+break
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
if name == 'jason':
break
print(name)
for+continue

for循环跳出本次循环,进入下一次循环

# for+continue
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
if name == 'jason':
continue
print(name)

for循环嵌套

# for循环嵌套
for i in range(3):
print(f'-----:{i}')
for j in range(2):
print(f'*****:{j}')

for+else

for循环没有break的时候触发else内部的代码块

# for+else
name_list = ['nick', 'jason', 'tank', 'sean']
for name in name_list:
print(name)
else:
print('for循环没有被break中断掉')

练习题

1.猜年龄游戏升级版,有以下三点要求:

  1. 允许用户最多尝试3次
  2. 每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序
  3. 如果猜对了,就直接退出
n=0
age=23
while n<4:
guess_age=int(input(f'请猜年龄,还有{3-n}次机会:'))
if guess_age==age:
print('猜对了!退出程序哦~')
break
else:
print('猜错了!')
n=n+1
if n==3:
conf=input('你猜错了三次,还要继续再猜吗?')
while 1:
if conf=='y' or conf=='Y':
n=0
break
elif conf=='n' or conf=='N':
print('不猜了,退出程序')
n+=1
break
else:
conf=input('输入错误,不继续请输入n或者N,继续请输入y或者Y')

2.打印99乘法表

for i in range(1,10):
for j in range(1,i+1):
print(f"{i},*,{j},=,{i*j}",end=' ')
print()

3.打印如下所示金字塔:

'''
# max_level=5
* # current_level=1,空格数=4,*号数=1
*** # current_level=2,空格数=3,*号数=3
***** # current_level=3,空格数=2,*号数=5
******* # current_level=4,空格数=1,*号数=7
********* # current_level=5,空格数=0,*号数=9 # 数学表达式
空格数 = max_level-current_level
*号数 = 2*current_level-1
'''
max_level=5
for i in range(1,max_level+1):
current_level=i
blank=max_level-current_level
star=2*current_level-1
print(' '*blank,'*'*star)

if判断,while循环,for循环的更多相关文章

  1. Python基础之if判断,while循环,循环嵌套

    if判断 判断的定义 如果条件满足,就做一件事:条件不满足,就做另一件事: 判断语句又被称为分支语句,有判断,才有分支: if判断语句基本语法 if语句格式: if 判断的条件: 条件成立后做的事 . ...

  2. Python第四天 流程控制 if else条件判断 for循环 while循环

    Python第四天   流程控制   if else条件判断   for循环 while循环 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Python第二天 ...

  3. 10_bash_变量_条件判断及运算_sed_循环

    shell编程: 编译器.解释器编程语言:机器语言.汇编语言.高级语言 静态语言:编译型语言 强类型(变量):变量在使用前,必须事先声明,甚至还需要初始化 事先转换成可执行格式 C/C++.C#.Ja ...

  4. JavaScript基础知识(三个判断、三个循环)

    三个判断 if…else…只会执行其中一个条件 如果if条件中只有一个值,那么会默认转布尔: if(1=="1"){ // 当括号中条件为true时,执行此处的代码 console ...

  5. python-if条件判断与while/for循环

    条件判断if 让计算机像人一样,能判断是非对错,根据条件做一些事情. if ''' ------ if代码结构:------- if 条件: 代码体 tips:同一缩进范围内的代码被视作同一代码体,p ...

  6. Python中的条件判断、循环以及循环的终止

    条件判断 条件语句是用来判断给定条件是否满足,并根据判断所得结果从而决定所要执行的操作,通常的逻辑思路如下图: 单次判断 形式 if <判断条件>: <执行> else: &l ...

  7. 判断语句 、 while循环 、 for循环

    判断语句 语法结构 if 条件1: 如果条件1为真,执行语句块 elif 条件2: 如果条件2为真,执行语句块 elif 条件3: 如果条件2为真,执行语句块 elif 条件n: 如果条件n为真,执行 ...

  8. java 流程执行 循环 foreach循环

    一. if分支 1. 结构  if  else if   else 2.执行原则 if  if  if 结构  会一直去执行()里的判断语句 if else if  else if 结构  只要一条( ...

  9. (十一)if...else&for循环&while循环

    ----------------------------------if else------------------------------1.最基本的if语句:if name =="Al ...

  10. Python流程控制-while循环-for循环

    写重复代码 是可耻的行为 -------------- 完美的分割线  -------------- 摘录自:http://www.runoob.com/python/python-loops.htm ...

随机推荐

  1. Manthan, Codefest 16 F

    寻找树上最大权值和的两条不相交的路径. 树形DP题.挺难的,对于我…… 定义三个变量ma[MAXN], t[MAXN], sum[MAXN] 其中,ma[i]代表i子树中,最长的路径和 t[i]代表i ...

  2. 运行系统命令而且将输出写到指定日志文件的shell脚本(2)

    上一篇是个简单的能够运行而且写入日志的脚本,可是假设放到生产环境上就显得太粗糙了,所以须要进一步的优化: #! /bin/bash if [ -d "/opt/bmc" ] ; t ...

  3. sizeof小览

    一.文章来由-一道面试题迁出的探究 我发现我已经形成一种习惯写来由了,以后看博客的时候能够让我回顾起为什么出现这个问题,我用什么方法解决的,既然形成习惯就让这个习惯保持下去吧.今天实验室师姐在看书,一 ...

  4. 百度LBS云搜索时报错 &quot;filter:area is not filteable field, please set property in the cloud-storage

    {"status":2,"message":"filter:area is not filteable field, please set prope ...

  5. 在oracle中操作表及字段注释,查询一个表的所有字段名以及属性和约束

    1.查询表注释 SELECT * FROM USER_TAB_COMMENTS; 三列:TABLE_NAME,TABLE_TYPE,COMMENTS 2.查询字段注释 SELECT * FROM US ...

  6. java 定位工具

    #查看JVM所有进程及启动类信息以及PID jps -mlvV #查看JVM运行各种状态信息,包括GC,类加载,堆内存信息,jit编译信息等jstat -gcutil <PID> (堆内存 ...

  7. Android SDK中的Support兼容包详解

    这篇文章主要介绍了Android SDK中的Support兼容包详解,本文详细区分了Support Library的版本区别.各种Theme的概念和使用注意事项等内容,需要的朋友可以参考下 背景 来自 ...

  8. IOC框架---什么是IOC

    1 IoC理论的背景    我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑.                    ...

  9. centos7离线安装rabbitmq

    准备工作 一台centos7的机器 erlang-21.3.8.2 RabbitMQ 3.7.15 socat-1.7.3.2-2.el7.x86_64.rpm 开始安装 登录centos ,把上面的 ...

  10. Gson 转日期中的错误

    今天在用Gson做json转化是遇到一个问题,本地执行没有问题(windows 7),包丢到服务器上(Centos)就报错了. 后经分析发现DateTypeDapter类中取本地环境的日期格式参考ht ...