好久没更新了,最近忙着MATLAB复现论文代码,今天终于抽空做完了第四章的练习,有挺多不会的(圈起来的就是,横线的是会一些,卡住了一些),不过还是要继续努力,毕竟自己想要的生活是自己争取来的。
欢迎大家一起交流学习。我也是个新手,偶尔发发博客记录一下自己的努力过程。
以下是部分题目的代码,欢迎交流学习
# 第一题
import random
while int(input("是否开始游戏?(0->退出,1->开始):")):
print("<欢迎来到大冒险>")
print("1.石头")
print("2.剪刀")
print("3.布")
select = int(input("请输入你的选择:"))
robot = random.randint(1, 3); # 随机生成一个1-3的数字
if select == 1:
if robot == 3:
print("你出的是石头,机器人出的布。你输了!")
continue
elif robot == 2:
print("你出的是石头,机器人出的剪刀,你赢了!")
break
else:
print("你和机器人都出的石头。平局!")
continue
elif select == 2:
if robot == 1:
print("你出的剪刀,机器人出的石头。你输了!")
continue
elif robot == 3:
print("你出的剪刀,机器人出的布。你赢了!")
break
else:
print("你和机器人都出的剪刀。平局")
continue
else:
if robot == 2:
print("你出的布,机器人出的剪刀。你输了!")
continue
elif robot == 1:
print("你出的布,机器人出的石头。你赢了!")
break
else:
print("你和机器人都出的布。平局!")
continue
# 出了while循环
print("\n") # 打印空行
print("---再见---")
# help(random)
# 第四题
while int(input("是否开始判断几位数(0->退出,1->开始):")):
num = int(input("请输入你要判断是几位数的数字: "))
if num >=1000 or num <=-1000:
print(f"{num}是大等于四位数的数字")
elif num >=100 or num <-100:
print(f"{num} 是三位数的数字")
elif num >= 10 or num < -10:
print(f"{num} 是两位数的数字")
else:
print(f"{num} 是个位数")
print("\n")
print("---再见---")
# 第八题
def triangles(x, y):
"""
这个函数用于计算杨辉三角中指定位置的数值。
参数:
x:表示杨辉三角中的行数,从1开始计数。
y:表示杨辉三角中某一行内的位置,从1开始计数。
返回值:
根据杨辉三角的规律返回对应位置的数值。
"""
if y == 1 or y == x:
# 当y等于1或者y等于x时,即在杨辉三角的每行开头或结尾位置,函数返回值为1
return 1
else:
# 当y为其他值时,根据杨辉三角的递推公式来计算当前位置的值
z = triangles(x - 1, y - 1) + triangles(x - 1, y)
return z
if __name__ == "__main__":
n = int(input("请输入杨辉三角的行数:"))
# 外层循环用于控制输出杨辉三角的行数,从第1行开始,到输入的n行结束
for i in range(1, n + 1): # 包左不包右
# 内层第一个循环用于在每行输出前添加适当的空格,以形成杨辉三角的等腰三角形形状
for j in range(0, n - i + 1):
print(" ", end=" ") #end=" " 不换行,增加一个空格
# 内层第二个循环用于输出杨辉三角当前行的每个数值
for j in range(1, i + 1):
# 调用triangles函数,计算并输出第i行的第j个值,每个值占6个字符宽度并靠右对齐
print("%6d " % (triangles(i, j)), end=" ")#end=" " 不换行,增加一个空格
print()
# 十三题
num = 0
str = "mfmefmrrom"
for i in str:
# print(i)
# if "m" in str: 这个错误是因为,判断第i次循环,str整个中是否包含“m”
if i == "m":
num = num +1
else:
continue
print(f"字符串 {str} 中m的个数为 {num}" )