【python】while for 循环练习,break,continue区别和用法,都有习题练习和答案,适合新人学习,我今天学习后很受益,分享给大家。

当天知识点回顾

  • 能够说出while循环语句的作用和语法格式
  • 能够使用while语句完成循环
  • 能够说出while语句嵌套的格式
  • 能够说出for循环语句的作用和语法格式
  • 能够使用 for 和 range函数完成循环
  • 能够说出 break和continue的使用和区别
  • 能够使用 for ... else ...语句完成循环
  • 能够知道知道在Python中 单引号或者双引号或者三引号中的数据,就是字符串。
  • 能够使用 s% 和 f-strings 语法完成字符串的输出
  • 能够知道使用 input 函数 获取到的数据类型是字符串
  • 能够字符串的下标的使用和知道下标是从 0 开始的。
  • 能够知道切片的语法 [起始:结束:步长]
  • 能够记住五个字符串常见的操作方法 find、replace、split、strip、join

随堂练习

  1. 说出while循环的应用场景和语法格式
  2. 完成循环打印5次hello world
  3. 使用循环计算出 1-100 所有数字累加的和
  4. 使用循环计算出 1-100 之间偶数的和
  5. 使用while循环打印三角形
  6. 使用while循环完成九九乘法表
  7. 使用for循环完成 1-100之间偶数的和
  8. 说出 break和continue的区别
  9. 认识字符串
  10. f-string用法
  11. 字符串的下标和切片
  12. 字符串常见操作方法

每日练习

题目1 (实操题)

题干

使用while循环计算1~100的累加和(包含1和100)

训练目标

  • whlie循环的基本使用

训练提示

  • whlie循环的基本格式是什么?
  • while循环的条件(次数)和累加值的关系?
  • 求和后重新赋值

参考方案

  • 用一个“sum”的变量来存储求和后的数值
  • 定义变量,控制循环次数
  • 使用while循环,进行求和运算

操作步骤

  • 定义一个变量“sum”,初始化赋值为“0”,保存求和的值
  • 定义变量“i” ,用于控制循环次数
  • while循环,当"i<=100"时跳出循环
  • 累加和
  • 变量“i”自增,确保循环能够正常跳出

参考答案

# 1-100累加和计算
sum = 0
i = 1
while i<=100:
    sum += i
    i += 1
print(sum)

题目2(实操题)

题干

使用while嵌套循环打印如下图形

*
* *
* * *
* * * *
* * * * *

训练目标

  • while嵌套循环的使用

训练提示

  • 使用while嵌套的形式打印图形
  • 哪个循环控制的是行数,哪个循环控制的是列数?
  • 内层循环的条件是什么?
  • 如何让打印后不自动换行

参考方案

  • while嵌套循环,外层循环代表的是行数,内层循环代表的是每行的个数(列)
  • 内层循环个数是外层循环行数的值
  • 打印print(" “,end=” ") end代表的是每次打印的时候以什么结尾,默认是“\n” 换行

操作步骤

  • 定义外层循环,循环5次
  • 定义内层循环,循环条件是外层循环的循环次数
  • 打印“*” 设置 end=" " 修改自动换行
  • 内层循环结束后打印一个换行

参考答案

i = 1
j = 1
while j <= 5:
    while i <= j:
        print('*',end=' ')
        i += 1
    print()
    i = 1
    j += 1

题目3(实操题)

题干

编写代码模拟用户登陆。要求:用户名为 python,密码 123456,如果输入正确,打印“欢迎光临”,程序结束,如果输入错误,提示用户输入错误并重新输入

训练目标

  • while中的break的使用

训练提示

  • 定义变量,用户名和密码采用什么格式存储
  • 循环没有次数限制,那么我们使用while循环的时候条件是什么?
  • 判断用户名和密码是否相同,我们的条件采用“or"还是“and”?
  • break的作用是什么

参考方案

  • 首先我们要自己定义用户名和密码保存
  • 如果用户错误那么就需要重新循环,我们就需要采用什么方式进行循环?
  • 提示用户输入信息
  • 判断输入信息,根据不同的结果进行不同的执行方式

操作步骤

  • 定义名户名和密码分别为name = “python”,pwd = “123456”
  • 使用循环,循环条件是True
  • 提示用户输入用户名和密码
  • 判断用户名和密码是否正确
  • 如果正确跳出循环,不正确提示输入错误

参考答案

name = "python"
pwd = "123456"
while True:
    user_name = input('请输入用户名:')
    user_pwd = input('请输入密码:')
    if user_name == name and user_pwd == pwd:
        print('欢迎光临')
        break
    else:
        print('用户名或密码不正确,请重新输入!')

题目4(实操题)

题干

设计“过7游戏”的程序, 打印出1-100之间除了7和7的倍数之外的所有数字,如果遇见7和7的倍数则打印“哈~”跳过本次循环。

训练目标

  • while中的continue的使用

训练提示

  • continue的作用是什么?
  • 如何判断一个数是7的倍数
  • 如果是7的倍数我们需要跳过本次循环进入到下一次循环

参考方案

  • 我们如果打印1~100的数字?
  • 当遇见了7的倍数,我们打印“哈~”后还如何做?
  • 注意“i”的位置,不要放到continue的下面,会造成死循环

操作步骤

  • 定义循环次数
  • 使用while循环
  • 判断当前值是否是7的倍数
  • 如果是7的倍数那么我们需要打印“哈~”,并且跳过本次循环

参考答案

i = 1
while i <= 100:
    if i % 7 == 0:
        print('哈~')
        i += 1
        continue
    else:
        print(i)
    i += 1

拓展提高

题目5(实操题)

题干

已知变量如下:

a = "itheima"

从键盘上输入一个字母,判断此字母 是否在变量 a 中,如果在则输出 找到了, 如果不在 则输出 查无此字母

训练目标

  • for…else的使用

训练提示

  • 遍历此变量,判断这个 “i”,是否 等于 遍历得到的每个结果,如果等于,则说明 在变量 a中
  • 注意在循环中 执行了break 后,else则不会执行

操作步骤

  • 使用for 循环遍历变量a

  • 判断遍历的结果是否 == 于 “i”, 如果等于, 则输出找到了,执行break

  • 如果没找到, 则执行 else,输出 查无此字母

参考答案

a = "itheima"
b = input('请输入一个字母:')
for i in a:
    if b == i:
        print('找到了')
        break
else:
    print('查无此字母')

题目6 (实操题)

题干

要求用户输入一个字符串,遍历当前字符串并打印,如果遇见“q”,则跳出循环。如果遇见“ ”(空格)则跳过当前输出。

训练目标

  • for循环的基本使用
  • break的作用
  • continue的作用

训练提示

  • for 循环的基本语法是什么
  • for循环的作用是什么
  • break的作用?
  • continue的作用?

参考方案

  • 使用for循环遍历当前字符串
  • 判断每一字符是什么进行操作

操作步骤

  • 提示用户输入字符串
  • 便利当前字符串
  • 如果是“q”则退出,如果是“ ”(空格)则跳过本次循环
  • 打印字符

参考答案

str1 = input('请输入字符串:')
for i in str1:
    if 'q' == i:
        break
    elif ' ' == i:
        continue
    print(i,end='')

题目7 (实操题)

题干

使用for循环计算从0到用户输入的值的累加和

训练目标

range()的使用

训练提示

  • range()方法的作用
  • for循环如何使用
  • 累加重新赋值

参考方案

  • 使用for寻遍遍历0~用户输入的值
  • 进行累加重新赋值

操作步骤

  • 定义变量sum,初始化sum=0
  • 遍历0~用户输入的值 的所有的值
  • 进行累加和

参考答案

sum = 0
num1 = int(input('请输入一个整数:'))
for i in range(num1+1):
    sum += i
print(sum)

自主预习

题目8 (实操题)

题干:

获取用户输入的用户名和密码,用户名要求长度5-15位,密码要求 6-20位,如果不满足条件打印出对应的提示信息(比如:用户名不符合,打印出 用户名要求长度5-15位),如果满足条件,输出用户输入的用户名密码,格式如下:

您输入的用户名是:xxx,密码为:xxxxxxx

训练目标

  1. 获取用户的输入
  2. 判断字符串的长度

参考步骤

  1. 定义变量获取用户输入的用户名和密码
  2. 使用len方法获得用户输入的字符串的长度
  3. 判断长度是否符合规则

参考答案

user_name = input('请输入用户名:')
user_pwd = input('请输入密码:')

if 5 <= len(user_name) <= 15 and 6 <= len(user_name) <= 20:
    print(f'您输入的用户名是:{user_name},密码为:{user_pwd}')

elif len(user_name) < 5 or len(user_name) > 20:
    print('用户名不符,请输入5-15位的用户名')

elif len(user_pwd) < 6 or len(user_pwd) > 20:
    print('密码不符,请输入6-20位的密码')

题目9(实操)

题干

如果需要使用变量保存以下字符串,我们该如何书写代码

鲁迅说:“我没有说过这句话”

训练目标

让学员知道含有字符串嵌套的方式

训练提示

在python中,有两种表现形式都可以定义为字符串类型,是哪两种方式,是否可以混合使用呢

参考方案

使用 " " 和 ’ ’ 都可以对字符串进行定义

操作步骤

使用""嵌套’'嵌套的方式定义字符串

参考答案

str1 = '鲁迅说:"我没有说过这句话"'
print(str1)

题目10(实操题)

题干

做一个简单的用户信息管理系统:
提示用户依次输入姓名,年龄和爱好
并且在输入完成之后,一次性将用户输入的数据展示出来

训练目标

字符串的声明
字符串的输入
字符串的输出

训练提示

  1. 在python中,通过 “” 或者 ‘’ 声明一个字符串类型的变量
  2. 使用input()函数从键盘获取数据
  3. 通过%s 的格式化操作符来输出字符串类型

参考方案

  1. 通过input函数进行字符串数据的录入
  2. 使用 string 类型保存录入的数据
  3. 使用 %s 格式化输出保存的数据

操作步骤

  1. 通过input函数进行字符串数据的录入
  2. 使用 string 类型保存录入的数据
  3. 使用 %s 格式化输出保存的数据

参考答案

user_name = input("请输入您的姓名:")
user_age = input("请输入您的年龄:")
user_hobby = input("请输入您的兴趣:")

print('姓名:%s,年龄:%s,爱好:%s'%(user_name,user_age,user_hobby))

题目11(实操题)

题干

现有字符串如下,请使用切片提取出ceg
words = “abcdefghi”

训练目标

字符串的切片使用

训练提示

1, 切片的语法:[起始:结束:步长]
2, 选取的区间从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身),
3, 步长表示选取间隔,默认步长是正值,即从左到右选取,如果步长为负值,则从右向左选取

参考方案

1,使用切片进行截取,起始位置是-7,结束位置是-1
2,反向选取,步长为2

操作步骤

  1. 起始位置为-7,结束位置是-1,步长为2

参考答案

words = "abcdefghi"
# 正向取
new_words1 = words[-7:-1:2]
# 反向取
new_words2 = words[-3:-8:-2]

print(new_words1)
print(new_words2)

你可能感兴趣的:(成长历程)