1.输出0到100的数字,如果数字是3的倍数,输出Fizz,5的倍数输出Buzz。如果同时是3和5的倍数则输出FizzBu??zz,否则打印原来的数字foriinrange(100):ifi==0:print(i)elifi%3==0andi%5==0:print("FizzBu??zz")elifi%3==0:print("Fizz")elifi%5==0:print("Buzz")else:print(i)ps:条件语句是顺序执行,满足第一个条件后的下一个条件不执行。所以同时满足3和5的需求,放在上面。2、根据输入的数字,打印对应层数的等腰三角形星塔。然后打印星星,星星的个数:当前楼层数*2-1num=int(input("请输入一个数字:"))foriinrange(1,num+1):#外层循环定义了星塔的楼层数y=num-i#计算要打印的空格数print(""*y,end="")#打印空行forjinrange(1,2*i):#每行的星数print("*",end="")print()比如range(1,7),生成的序列是1到6,所以层数需要通过num+来控制1换行2*i是星星的数量,使用range()自动减一。-、使用while循环实现num=int(input("请输入一个数字:"))row=1whilerow<=num:print(""*(num-row)+"*"*(2*row-1))row+=1row是层数,默认是第一层可以组成不同且不同的重复三位数list=[]sum=0foriinrange(1,5):forjinrange(1,5):forkinrange(1,5):ifi!=jandj!=kandk!=i:num=i*100+j*10+klist.append(num)sum+=1print(list)print(sum)这三个数可以填十位和数百组成所有排列然后删除重复4.递归返回无值defget_op():str=input("Pleaseenteryourchoice1/2/3/4:")try:no=int(str)ifnonotin[1,2,3,4]:print("Pleaseenterthecorrectoperator")get_op()#这里要在前面加上returnelse:returnnoexceptValueErrorasf:print("Pleaseenterthecorrectoperator")get_op()#这之前应该有returnoperator=get_op()print(operator)outputPleaseenteryourchoice1/2/3/4:aPleaseenterthecorrectoperatorPleaseenteryourchoice1/2/3/4:11Pleaseenterthecorrectoperator请输入您的选择1/2/3/4:1None做下面这道题的时候,如果我直接输入1到4没有问题,但是如果输入的不是数字,还是不是1到4该数字将返回None值。查了很多,发现这样写递归调用后生成的值并没有返回,必须在递归函数调用前加上return。逐层传值。defget_op():str=input("Pleaseenteryourchoice1/2/3/4:")try:no=int(str)ifnonotin[1,2,3,4]:print("Pleaseenterthecorrectoperator")returnget_op()else:returnnoexceptValueErrorasf:print("Pleaseenterthecorrectoperator")returnget_op()operator=get_op()print(operator)output请输入你的Choose1/2/3/4:aPleaseenterthecorrectoperatorPleaseenteryourchoice1/2/3/4:22PleaseenterthecorrectoperatorPleaseenteryourchoice1/2/3/4:225编写程序提示“选择操作员”。输入“1/2/3/4”后,继续输入要计算的两个数,打印出计算结果defadd(n1,n2):value=n1+n2print("%d+%d=%d"%(n1,n2,value))defminus(n1,n2):value=n1-n2print("%d-%d=%d"%(n1,n2,value))defmultiply(n1,n2):value=n1*n2print("%d*%d=%d"%(n1,n2,value))defdivide(n1,n2):value=n1/n2print("%d/%d=%d"%(n1,n2,value))dict={1:add,2:minus,3:multiply,4:divide}defget_op():str=input("请输入你的选择1/2/3/4:")try:no=int(str)ifnonotindict:print("Pleaseenterthecorrectoperator")returnget_op()#return必须是递归的,否则返回值不是别的:returnnoexceptValueErrorasf:print("Pleaseenterthecorrectoperator")returnget_op()defget_num1():str=input("请输入第一个数字:")try:num=int(str)returnnumexceptValueErrorasf:print("Pleaseenteraninteger")returnget_num1()defget_num2():str=input("请输入第二个数字:")try:num=int(str)returnnumexceptValueErrorasf:print("Pleaseenteraninteger")returnget_num1()print("Selectoperation:\n1is+\n2is-\n3is*\n4is/")operator=get_op()num1=get_num1()num2=get_num2()dict[operator](num1,num2)ps:这个搞了好久,一个是递归返回值另一个问题是通过字典存储函数指针。为了减少代码量,前四个函数分别是加减乘除,然后存储在字段中,然后以字典名[key](函数参数)的形式调用。不需要写很多判断代码。6.冒泡排序,数组之间的相邻值成对比较。然后从大到小,或者从小到大排序'''学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441,寻找志同道合的小伙伴互相帮助。群里还有不错的视频学习教程和PDF电子书!'''ls=[7,12,34,4,24,20,11]foriinrange(len(ls)-1):#外层决定比较的轮次forjinrange(len(ls)-1-i):#Howmanynumberstocompareinpairsifls[j]
