Python3学习——条件控制、循环语句与迭代器
创始人
2024-05-19 13:47:19
0

目录

一、编程第一步——斐波那契数列

二、条件控制

(一)if/else语句

判断狗狗的年龄:

 (二)多层if/else嵌套

判断数字能否被2或3整除:

 (三)match...case匹配——python3中新增

根据数字判断星期:

三、循环语句

(一)while循环

1.循环+2:

2.while计算1~100的和:

3.无限循环:

4.while...else循环:

5.猜数字游戏:

6.判断狗狗年龄代码优化:

 (二)for循环

1.for循环遍历列表:

2.for循环遍历字符串:

3.遍历[1,10):

4.打印5个星星:

5.打印5行5列星星 :

(三)for...else循环

(四)range()函数

1.左闭右开区间:

2.设置区间步长:

3.结合 range() 和 len() 函数以遍历一个序列的索引:

(五)break和continue

1.break终止循环:

2.continue遇到条件跳过:

(六)pass语句

pass使用案例:

四、迭代器

代码示例:


一、编程第一步——斐波那契数列

a = 0
b = 1
while b < 10:print(b, end=',')a, b = b, a + b

运行结果:

二、条件控制

(一)if/else语句

if 条件1:

        运行结果1

elif 条件2:

        运行结果2

else:

        运行结果3

判断狗狗的年龄:

age = int(input('请输入狗狗的年龄:'))
if age <= 0:print('输入错误!')
elif age == 1:print('相当于14岁的人')
elif age == 2:print('相当于22岁的人')
elif age > 2:human = 22 + (age - 2) * 5print('对应人类的年龄为:', human)

运行结果:

 (二)多层if/else嵌套

判断数字能否被2或3整除:

num = int(input('请输入一个整数:'))
if num % 2 == 0:if num % 3 == 0:print('数字既能被2整除,也能被3整除')else:print('数字能被2整除,但是不能被3整除')
else:if num % 3 == 0:print('数字能被3整除,但是不能被2整除')else:print('数字不能被2和3整除')

 (三)match...case匹配——python3中新增

根据数字判断星期:

num = int(input('请输入1~7之间的整数:'))
match num:case 1:print('星期一')case 2:print('星期二')case 3:print('星期三')case 4:print('星期四')case 5:print('星期五')case 6:print('星期六')case _:print('星期日')

 case _: 类似于 C 和 Java 中的 default:,当其他 case 都无法匹配时,匹配这条,保证永远会匹配成功。

三、循环语句

(一)while循环

在 Python 中没有 do..while 循环

1.循环+2:

num = int(input('请输入一个数字:'))
while num < 20:print(num, end=',')num += 2

2.while计算1~100的和:

num = 0
counter = 1
while counter <= 100:num = num + countercounter += 1
print('1~100之间的和为:%d' % num)  # 1~100之间的和为:5050

3.无限循环:

num = 1
while num == 1:count = int(input('请输入一个数字:'))print('数字为', count)

4.while...else循环:

count = 1
while count <= 10:print('count的值为:', count)count += 1
else:print('count超出范围!')

5.猜数字游戏:

num = 12
guessnum = -1
print('数字猜谜游戏:')
while guessnum != num:guessnum = int(input('请输入猜测的数字:'))if guessnum > num:print('猜大了!')elif guessnum < num:print('猜小了!')else:print('猜对了!')

6.判断狗狗年龄代码优化:

dogAge = 16
age = -1
while age <= dogAge:age = int(input('请输入狗狗的年龄(<=16):'))if age <= 0:print('输入错误!')elif age == 1:print('相当于14岁的人')elif age == 2:print('相当于22岁的人')elif 2 < age <= 16:human = 22 + (age - 2) * 5print('对应人类的年龄为:', human)else:print('年龄超过狗狗寿命范围!')

 (二)for循环

for <变量> in <序列>:

         <代码段>

else:

        <代码段>

1.for循环遍历列表:

# for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。
sites = ['java', 'mysql', 'oracle', 'hadoop']
for tup in sites:print(tup, end=',')

运行结果:

2.for循环遍历字符串:

string = 'hello'
for i in string:print(i)

运行结果:

3.遍历[1,10):

for i in range(1, 10):print(i, end='\t')

运行结果:

4.打印5个星星:

for i in range(5):print('*')

运行结果:

5.打印5行5列星星 :

for i in range(5):print('*'*5)

运行结果:

(三)for...else循环

for i in range(5):print('*'*5)
else:print('打印完毕!')

(四)range()函数

在之前的代码中已经有部分range()函数的功能实现,range()函数还有其他的功能

1.左闭右开区间:

for i in range(5, 10):print(i)

运行结果:

2.设置区间步长:

for i in range(1, 10, 2):print(i)

 运行结果:

for i in range(-1, -15, -3):print(i)

运行结果:

3.结合 range() 和 len() 函数以遍历一个序列的索引:

sites = ['java', 'mysql', 'oracle', 'hadoop']
for i in range(len(sites)):print(i, sites[i])

 运行结果:

(五)break和continue

break 语句可以跳出 for 和 while 的循环体。如果从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。

 

continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

1.break终止循环:

num = 10
while num > 1:num -= 1if num % 2 == 0:breakprint(num)

运行结果:

判断1~100以内的质数:

for i in range(1, 101):for x in range(2, i):if i % x == 0:breakelse:print(i, end=',')

 运行结果:

2.continue遇到条件跳过:

num = 10
while num > 1:num -= 1if num % 2 == 0:continueprint(num)

运行结果:

(六)pass语句

pass是空语句,是为了保持程序结构的完整性。

pass 不做任何事情,一般用做占位语句,相当于输出程序中continue的结果

pass使用案例:

for i in 'ncidsijvb':if i == 'i':passprint('执行pass')print(i)

运行结果:

四、迭代器

迭代是Python最强大的功能之一,是访问集合元素的一种方式。

迭代器是一个可以记住遍历的位置的对象。

迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。

迭代器有两个基本的方法:iter()next()

字符串,列表或元组对象都可用于创建迭代器

代码示例:

下面代码的运行结果一样:

sites = [1, 2, 3, 4]
for i in sites:print(i)
#####################################sites = [1, 2, 3, 4]
it = iter(sites)
for i in it:print(i)#####################################import syssites = [1, 2, 3, 4]
it = iter(sites)
while True:try:print(next(it))except StopIteration:sys.exit()

运行结果:

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...