1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
importitertoolsa=('1','2','3','4')foriinrange(1,5):forkinitertools.permutations(a,i):if3==len(k):print(''.join(k))foriinrange(1,5):forjinrange(1,5):forkinrange(1,5):if(i!=k)and(i!=j)and(j!=k):print(i,j,k)企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
forxinrange(100,1000):a=str(x)ifint(a[0])**3+int(a[1])**3+int(a[2])**3==x:print(x)将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5whileTrue:x=int(input("输入整数:"))print('%d='%x,end='')whilex>1:foriinrange(2,x+1):ifx%i==0:x=int(x/i)ifx==1:print('%d'%i,end='')else:print('%d*'%i,end='')print()输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。defsum(count):number=0string=0space=0other=0foriincount:ifi.isdigit():number+=1elifi.isalpha():string+=1elifi.isspace():space+=1else:other+=1return'数字:'+str(number)+';字母:'+str(string)+';空格:'+str(space)+';其他:'+str(other)print(sum('mynameisfana1234567'))xx=input("输入:")print(sum(xx))求s=a+aa+aaa+aaaa+aa...a的值其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制
number=int(input("请输入数字:"))frequency=int(input("次数:"))x=numbera=[]sum=0foriinrange(frequency):a.append(x)c=str(x)+str(number)x=cforjinrange(len(a)):sum+=int(a[j])forkina:ifk==a[-1]:print(k,end='')else:print(str(k),end='+')print('=%d'%sum,end='')一球从100米高度自由落下每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
ball=100hop=[]foriinrange(10):ifi==0:hop.append(ball)else:hop.append(ball*2)ball=ball/2print("第%s次,反弹%s米"%(i+1,ball))print("第10次落地,共经历%s米"%(sum(hop)))猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
x=1foriinrange(9,0,-1):print(i,end='=')x=(x+1)*2print(x)一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。
fromsysimportstdoutforjinrange(2,1001):k=[]n=-1s=jforiinrange(1,j):ifj%i==0:n+=1s-=ik.append(i)ifs==0:print(j)foriinrange(n):stdout.write(str(k[i]))stdout.write('')print(k[n])两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
a=2b=1count=0foriinrange(20):count+=a/bb,a=a,a+bprint("%s=%s"%(i,count))求1+2!+3!+...+20!的和#c=0#foriinrange(1,21):#c=c+i#print("%s=%s+%s"%(c,c-i,i))#====后面有!是阶乘====c=1x=0foriinrange(1,21):c=c*ix=x+c#print("%s!=%s"%(i,c))ifi==20:print("%s"%(i),end='')else:print("%s+"%(i),end='')print("=%s"%x,end='')利用递归方法求5!defsum(n):ifn==0:con=1else:con=n*sum(n-1)returnconprint(sum(5))利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来deffan(inp):iflen(inp)==1:print(inp[-1])else:print(inp[-1])fan(inp[:-1])a=input("请输入:")fan(a)有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
defage(x):ifx==1:one=10else:one=age(x-1)+2returnoneprint(age(5))给一个不多于5位的正整数要求:一、求它是几位数,二、逆序打印出各位数字
x=input("请输入一个数:")ifnotx.isdigit():print("不是数字")else:n=str(x)print('length:',len(n))print('numbers:',end='')foriinrange(len(n)-1,-1,-1):print(n[i],end='')一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同
foriina:ifi==a[len(a)-1]:print(i,end='')else:print(i,end=',')##===2===str=','.join(str(i)foriina)print(str)按相反的顺序输出列表的值。a=[1,2,3,4,5,6]a.reverse()print(a)##---2----foriinrange(len(a)-1,-1,-1):print(a[i])请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
flag=Falsedeflogin(func):definner(*args,**kwargs):globalflagifflag==True:ret=func(*args,**kwargs)returnretelse:user=input('username:')pawd=input("密码:")ifuser=='fana'andpawd=='123456':flag=Trueret=func(*args,**kwargs)returnretelse:print('登陆失败')returninner@logindefshoplist_add():print("购买一件商品")@logindefshoplist_del():print("别要了")shoplist_add()shoplist_add()shoplist_del()shoplist_add()shoplist_del()编写装饰器,为多个函数加上记录调用功能,要求每次调用都将被调用的函数名写入文件
deffunc_log(fun):definner(*args,**kwargs):ret=fun(*args,**kwargs)withopen("file.txt",'a+',encoding='UTF-8')asf1:f1.write(fun.__name__+'\n')returnretreturninner@func_logdeffunc():print('func')@func_logdeffana():print('fana')编写下载网页内容的函数要求功能:输入一个url,函数返回下载页面的结果,
然后为刚刚的函数编写装饰器,实现下载的网页存放在文件中,如果文件内有值(文件大于0)就优先从文件读取,否则就去下载
defcheck_file(filename,aim):withopen(filename,encoding='utf-8')asf:#句柄:handler,文件操作符,文件句柄foriinf:ifaimini:yieldig=check_file('fana','生成器')foriing:print(i.strip())写生成器从文件中读取内容,在每一次读取到的内容之前加上‘***’之后再返回给用户
defcheck_file(filename):withopen(filename,encoding='utf-8')asf:#句柄:handler,文件操作符,文件句柄foriinf:yield'***'+iforiincheck_file('fana'):print(i.strip())