python基础-流程控制(if,while,for)
今日内容总结
——流程控制(if,while,for)
if:用来判断事物的对错、真假、是否执行。根据不同的情况判断,条件满足执行某条件下的语句
语法结构(3种)
# 第一种,只有if结构。条件表达式成立,执行代码块
if 条件表达式:
代码块 # 第二种,if……else……条件表达式成立,执行代码块1,否则执行代码块2
if 条件表达式:
代码块1
else:
代码块2 # 第三种,if……elif……else……
# 如果条件表达式1成立,执行代码块1;不成立,判断条件表达式2,如果条件表达式2成立,执行代码块2,否则执行代码块3。其中,elif可以有多个。
if 条件表达式1:
代码块1
elif 条件表达式2:
代码块2
else:aD
代码块3
if的嵌套
# 需求:溜达的时候,迎面走来个人,如果是个帅气的小哥哥,就上前要微信,否则就嫌弃地走掉。如果要到微信,就在一起散步,否则就回家撸猫
gender = 'male'
age = 21
is_smart = True # 帅气的小哥哥
is_success = True # 要到微信
if gender == 'male' and 30 > age > 20 and is_smart:
print("哈喽,小哥哥,加个微信呗")
if is_success:
print("那咱一起散步吧……")
else:
print("回家撸猫!")
else:
print("都没有帅气的小哥哥,回家回家!")
关于if的习题
# 给定一个不超过5位的正整数,判断其有几位
num = input("请输入整数:").strip()
num_int = eval(num)
count = 0
if num_int > 100:
if num_int > 10000:
count = 5
elif num_int > 1000:
count = 4
else:
count = 3
else:
if num_int > 10:
count = 2
else:
count = 1
print(f"您输入的是{count}位数")
while:条件判断,当符合条件,重复执行操作。注意条件的编写,防止陷于死循环
语法结构(2种)
# 第一种 while
while 条件表达式:
需重复执行的代码块 # 第二种 while + else
while 条件表达式:
需重复执行的代码块
else:
# 这个代码块是while中的操作正常结束后,才可以执行的代码。
# 如果重复操作被break中断,此处代码不会被操作
正常执行重复操作结束后,执行的代码块
while的嵌套
""" 需求:登录认证
1、输入账号、密码,登录成功,提示登录成功
2、如果登录三次,账号密码都不对,锁定账号
3、登录成功后,可以进行命令操作
4、登录成功后,输入exit时,退出
"""
user_name = "dawn" # 存储的用户名
password = "1234" # 存储的密码
count = 0 # 登录失败的计数器
tag = True # 执行重复登录操作的条件 while tag:
name_inp = input("Please input your name>>>:")
pwd_inp = input("Please input your password>>>:")
if user_name == name_inp and password == pwd_inp:
print("登录成功")
while tag:
# 登录成功后,如果用户输入 exit 命令,退出操作,否则一直执行命令
cmd = input(">>>:")
if cmd == "exit":
tag = False
else:
print(f"执行{cmd}命令")
else:
print("登录失败")
count += 1 # 登录失败,计数器次数增加一次
if count == 3:
# 每次登录后,判断登录失败的次数是否等于3次,如果是,锁定账号,停止操作
print("锁定账户")
tag = False
关于while的习题
# 习题:任意输入一个不超过5位的正整数,依次输出个位、十位、百位、千位、万位的数字。思考:如果是依次输出万位、千位、百位、十位、个位的数字呢?
num = input("请输入整数:").strip()
num_int = eval(num)
count = 0
print(num_int)
while True:
print(num_int % 10)
num_int = num_int // 10
count += 1
if num_int == 0:
break
print(f"你输入的位数是:{count}")
for:从一个可迭代的集合或对象中依次取出当中的元素,每取一个元素,执行一次操作,直到将集合或对象中的元素取完。(每次执行的操作是一样的,可跟元素无关,也可跟元素有关)。
for是一种不依赖于索引的取值方式。
语法结构(2种)
# 第一种 for 元素 in 可迭代的集合或者对象:需执行的操作
for element in iteration:
需要执行的代码块 # 第二种 for + else
for element in iteration:
需要执行的代码块
else:
# 如果在取元素的过程中,被break中断,此处的代码不会被执行
正常将集合或对象中的元素取完后,执行的代码块
for的嵌套
# 打印九九乘法表
for i in range(1, 10):
for j in range(1, i + 1):
print(f"{j}*{i}={i*j}", end="\t")
print() for i in range(9, 0, -1):
for j in range(1,i+1):
print(f"{j}*{i}={j*i}", end="\t")
print()
关于for的习题
"""1、请实现以下图形的打印
*
***
*****
*******
*********
"""
for i in range(1,6):
for j in range(5 - i):
print(" ", end="")
for z in range(2*i-1):
print("*",end="")
print() line_str = input("请输入打印的行数:")
line = int(line_str)
for i in range(1, line+1):
print(" " * (line - i),end="")
print("*" * (i * 2 - 1))
continue:跳过当前循环,继续下一次循环
# 请依次输出1,2,3,5,6,7(4不输出)
count = 0
while count < 7:
count += 1
if count == 4:
continue
print(count)
break:结束/中断本层循环
# 依次输出1,2,3,遇到4就不再输出
count = 0
while count < 10:
count += 1
if count == 4:
break
——内置方法(len和range)
len():获取长度
- 数字类型的元素没有 len()
- 字符串 str 获取的是字符串字符的个数
- 列表 List 获取的是列表中元素的个数
- 字典 dict 获取的是字典中键值对的个数
range():获取一个可迭代的集合
在 python 2中,使用 range() 返回的是一个列表
在python 3中,使用 range() 返回的是一个可迭代的集合
使用方式有两种:
range(stop)
for i in range(4):
print(i)
# 结果为:0,1,2,3
根据结果可以看出range()默认是从0开始的,不包含4本身,典型的顾头不顾尾
range(start,stop[,step])
for i in range(1,8,2)
print(i)
# 结果为:1,3,5,7
根据结果可以知晓,start 表示取数的起始值,stop 表示终止值,step 表示步长,可以理解为每次取数时的累加值。其中[step]表示这个参数是选填,可以不使用,默认步长是1。
python基础-流程控制(if,while,for)的更多相关文章
- Python基础—流程控制
一.Python流程控制 计算机程序在解决某个具体问题时,包括三种情形,即顺序执行所有的语句.选择执行部分的语句和循环执行部分语句,这正好对应着程序设计中的三种程序执行结构流程:顺序结构.选择结构和循 ...
- python基础-->流程控制-->分支结构-->单项分支-->双向分支
# ###流程控制 ''' 流程:代码执行过程 流程控制:对代码执行过程的管控 顺序结构:代码默认从上到下依次执行 分支结构:对代码执行过程的管控 循环机构: while for ..in.... 分 ...
- python基础流程控制
流程控制主要分为三大类: 1.if 判断语句 2.while 循坏语句 3.for 循坏语句 下面以举例说明: if 判断语句: user1 = 'seven' user2 = 'alex' pass ...
- Python基础 ----- 流程控制
------ 条件判断 if 条件判判断语法: 条件判断注意: 1.由if 条件起始 2.关键字后面要加一个空格 3.条件后面接: 4.符合python代码缩进格式 5.条件判断可以有多种组合方式 ...
- 小白学 Python(8):基础流程控制(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- Python之流程控制——if...else...
Python之流程控制--if...else... 一.流程控制 假如把程序比做走路,那我们到现在为止,一直走的都是直路,还没遇到过分岔口.当遇到分岔口时,你得判断哪条岔路是你要走的路,如果我们想让程 ...
- Python之流程控制——while循环
Python之流程控制--while循环 一.语法 while 条件: 执行代码 while就是当的意思,它指当其后面的条件成立,就执行while下面的代码. 例:写一个从0打印到10的程序 coun ...
- Java编程基础——流程控制
Java编程基础——流程控制 摘要:本文主要介绍Java编程中的流程控制语句. 分类 流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下三种: 顺序结构:从上到下依次执行每条语句操作 ...
- python之流程控制升级
python之流程控制:if elif else while for 一.流程控制之if: 1.1为什要有if判断:让计算机能像人一样代替人类工作,那么计算机应该有对于事务的读错,真假,是否可行的 ...
随机推荐
- 死磕 java同步系列之终结篇
简介 同步系列到此就结束了,本篇文章对同步系列做一个总结. 脑图 下面是关于同步系列的一份脑图,列举了主要的知识点和问题点,看过本系列文章的同学可以根据脑图自行回顾所学的内容,也可以作为面试前的准备. ...
- ['1', '2', '3'].map(parseInt) what & why ?
这是今天在 Advanced-Frontend组织 看到一个比较有意思的题目.主要是讲JS的映射与解析早在 2013年, 加里·伯恩哈德就在微博上发布了以下代码段: ['10','10','10',' ...
- 经典面试题golang实现方式(一)
以下所有题目的关键信息都会用[]括起来,我们不对题目进行分析,只给出题目的解决方案:如有疑问请不吝赐教. 题目: 请实现一个算法,确定一个字符串的所有字符[是否全都不同].这里我们要求[不允许使用额外 ...
- Mariadb 基于Mycat实现读写分离
环境:Mariadb主:192.168.200.129 Mariadb从:192.168.200.114 Mycat :192.168.200.112 (1) 安装jdk,先查看本机是 ...
- cocos2d-x C++ 工程初探
经过较为繁琐的环境搭建后,我们终于运行出了一个helloworld窗口,可以正式上手cocos了 现在我们就从改代码开始玩起 窗口 我们之前讲到AppDelegate类是程序的入口,所以和窗口有关的设 ...
- 【POJ2001】Shortest Prefixes
Shortest Prefixes Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 18724 Accepted: 810 ...
- Spring基础(一)
一.Spring简介 Spring框架性质是属于容器性质的.容器中装什么对象就有什么功能.所以可以一站式开发(springmvc+ioc+spring jdbc).核心是IOC(控制反转)和AOP(面 ...
- 深度长文回顾web基础组件
什么是Serlvet ? 全称 server applet 运行在服务端的小程序: 首先来说,这个servlet是java语言编写的出来的应用程序,换句话说servlet拥有java语言全部的优点,比 ...
- 像艺术家一样思考 Think Like an Artist
艺术家是如何获得灵感,如何找到自己的独特风格和主题的? 艺术家在绘画.写作.表演或歌唱前不会去征求谁的允许,而是随心而行 要想在数字时代获得满足感,我们需要变得有创造性 1.艺术家富有事业心 艺术家是 ...
- Windows 服务程序(一)
Windows 服务程序简介: Windows服务应用程序是一种需要长期运行的应用程序,它对于服务器环境特别适合. 它没有用户界面,并且也不会产生任何可视输出.任何用户消息都会被写进Windows事件 ...