Python编程学习笔记
程序员文章站
2022-07-09 23:19:02
条件作业# 作业1:求1000以内所有的水仙花数i = 100while i < 1000: if (i//100)**3 + ((i//10)%10)**3 + (i%10)**3 == i: print(i,end="\t") i += 1else: print("打印结束!")# 作业2:获取用户输入的任意数,判断其是否是质数?a = int(input('请输入一个数:'))i = 2while i < a: if...
条件判断
条件判断语句(if语句)
- 执行的流程:
if语句在执行时,会先对条件表达式进行求值判断,
如果为True,则执行if后的语句
如果为False,则不执行 - 语法结构:
if 条件表达式 :
代码块
- 执行流程:
代码块代码块中保存着一组代码,同一个代码块中的代码,要么都执行要么都不执行
代码块以缩进开始,直到代码恢复到之前的缩进级别时结束
代码块就是一种为代码分组的机制
input() 函数
该函数用来获取用户的输入
input()调用后,程序会立即暂停,等待用户输入
用户输入完内容以后,点击回车程序才会继续向下执行
用户输入完成以后,其所输入的的内容会以返回值得形式返回
if-else语句
- 语法结构:
if 条件表达式 :
代码块
else :
代码块
- 执行流程:
if-else语句在执行时,先对if后的条件表达式进行求值判断
如果为True,则执行if后的代码块
如果为False,则执行else后的代码块)
if-elif-else 语句
- 语法结构:
if 条件表达式 :
代码块
elif 条件表达式 :
代码块
elif 条件表达式 :
代码块
........
else :
代码块
- 执行流程:
if-elif-else语句在执行时,会自上向下依次对条件表达式进行求值判断,
如果表达式的结果为True,则执行当前代码块,然后语句结束
如果表达式的结果为False,则继续向下判断,直到找到True为止
如果所有的表达式都是False,则执行else后的代码块 - 总结: if-elif-else中只会有一个代码块会执行
while语句
- 循环语句可以使指定的代码块重复指定的次数.循环语句分成两种,while循环和 for循环
# 使用while循环计算1-20的累加和
# 1+2+3+.....+20
i = 1
sum = 0
while i <=20:
sum += i
i += 1
print('1-20的和是:',sum)
- 语法结构:
while 条件表达式 :
代码块
else:
代码块
break和continue
-
break 可以用来立即退出循环语句,包括else语句
-
continue 用来跳过当次循环
执行结果如下:
练习打印九九乘法表
# 打印 9*9乘法表
i = 1 # 表示行数
while i <= 9:
j = 1 # 表示列数
while j <= i:
print('{}×{}={}'.format(j,i,(j*i)),end = ' ') # 打印结尾用两个空格分隔
j +=1
i +=1
print() # 打印完本行的所有列后换行
结果如下:
作业
# 作业1:求1000以内所有的水仙花数
i = 100
while i < 1000:
if (i//100)**3 + ((i//10)%10)**3 + (i%10)**3 == i:
print(i,end="\t")
i += 1
else:
print("打印结束!")
# 作业2:获取用户输入的任意数,判断其是否是质数?
while True:
a = input('请输入一个数:')
if a.isdigit():
a = int(a)
if a == 1:
print('1不是质数,请重新输入!')
continue
i = 2
while i < a:
if a % i == 0:
print('你输入的不是质数!')
break
else:
i += 1
else:
print('你输入的是质数!')
break
else:
print('只能输入正整数!')
'''
作业3:猜拳游戏:
• 出拳 玩家:手动输入 电脑:随机输入
• 判断输赢: 玩家获胜 电脑获胜 平局
'''
import random
# 玩家出拳:
while True:
user = input('请输入你要出的拳(0:拳头,2:剪刀,5:布):')
if user.isdigit:
user = int(user)
if user == 0 or user == 2 or user == 5:
break
else:
print('只能输入0,2,5这三个数中的一个!')
else:
print('只能输入0,2,5这三个数中的一个!')
# 电脑出拳
while True:
a = random.randint(0,5)
if (a == 0 and user == 2) or (a == 2 and user == 5) or (a == 5 and user == 0):
a = "拳头" if a == 0 else "剪刀" if a == 2 else "布"
user = "拳头" if user == 0 else "剪刀" if user == 2 else "布"
print('你输了!你出的是{},电脑出的是{}'.format(user,a))
break
elif (a == 0 and user == 5) or (a == 2 and user == 0) or (a == 5 and user == 2):
a = "拳头" if a == 0 else "剪刀" if a == 2 else "布"
user = "拳头" if user == 0 else "剪刀" if user == 2 else "布"
print('你赢了!你出的是{},电脑出的是{}'.format(user, a))
break
elif a == user:
a = "拳头" if a == 0 else "剪刀" if a == 2 else "布"
print('平局!你们出的都是{}'.format(a))
break
else:
continue
本文地址:https://blog.csdn.net/lawlietboss/article/details/109882097