python基础学习之路
展示的是平时收集的一些python程序
有图有派
一个从JAVA转行的python老师
展开
-
python基本算法合集(18)——列表转换为字典
i=['a','b']l=[1,2]print (dict([i,l]))原创 2021-03-10 16:26:28 · 208 阅读 · 0 评论 -
python基本算法合集(17)——三支乒乓球队出赛名单
'''两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比。请编程序找出三队赛手的名单。用的是列表'''L1 = ['x', 'y', 'z']#for a in L1: for b in L1: # 避免重复参赛 if a != b: for c in L1: # 避免重复参赛 .原创 2021-03-05 12:48:09 · 283 阅读 · 0 评论 -
python基本算法合集(16)——打印菱形
要求打印一个菱形菱形其实是上下对称结构的,只要把上半部分打印出来了,下半部分的图形只要把上半部分对称下就可以完成整个图形的打印了。#循环变量计算为♥总数从0开始左、右分开写。#如♥总数为7个,那么循环变量是-3,4,步长为1。'''需要打印9层最终形成菱形'''for j in range(-4,5,1):#从-4开始数到4一共是9个数字 if j<0:#如果循环变量小于0 i=-j#让负数变成正数,并重新赋值 else: i=.原创 2021-03-04 08:16:40 · 823 阅读 · 1 评论 -
python基本算法合集(15)——打印三角形
#打印三角形'''根据用户输入要打印的三角形的层数,打印出一个倒三角'''n=int(input('输入等腰三角形的层数'))#等待用户输入三角形的层数for i in range(n,0,-1):#循环从层数到0,每次递减1 print('*'*i,end='')#打印i个※号,不换行加空格。 print('\n')#打印换行...原创 2021-03-03 08:50:28 · 991 阅读 · 0 评论 -
python技术总结------循环技巧
#当遍历字典时,可以使用该items()方法同时检索键和相应的值。knights={'gallahad':'the pure','robin':'brave'}for k ,v in knights.items(): print(k,v)print()#在序列中循环时,可以使用该enumerate()功能同时检索位置索引和相应的值。for i,v in enumerate(['tic','tac','toe']): print(i,v)print()#要同时循环两个或.原创 2021-03-02 12:44:45 · 150 阅读 · 0 评论 -
python基本算法合集(14)——计算从1加到100之和
程序要求计算从1加到100之和。i=a=0while i<100: i+=1 a+=i print ('从1加到100等于',a)原创 2021-03-02 12:42:43 · 2216 阅读 · 0 评论 -
python基本算法合集(13)——猴子吃桃
'''猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。#这题得倒着推。#第10天还没吃,就剩1个,说明第9天吃完一半再吃1个还剩1个#假设第9天还没吃之前有桃子p个,#可得:p * 1/2 - 1 = 1,可得 p = 4。以此类推,即可手算出。'''p=1print('第十天就剩下1个桃子')f.原创 2021-03-02 07:24:57 · 212 阅读 · 0 评论 -
python基本算法合集(12)——条件判断输入成绩属于哪一等
根据用于输入的成绩,判断成绩是属于哪一个等级。本程序用的是自定义函数CJ()判断,当成绩大于90时则属于A等,在60~90之间则输入B等,60往下是输入C等,代码如下:def CJ(n): if (n>=90): print('{}分属于A等'.format(n)) elif (60<=n<=89): print('{}分属于B等'.format(n)) else: print('{}分属于C等'.forma原创 2021-03-01 18:18:20 · 258 阅读 · 0 评论 -
python基本算法合集(11)——找水仙花数
所谓水仙花数就是给定随机的三位数,它的各位数字的三次幂之和等于它本身,如:三位数153=1^+5^3+3^3要求编程实现判断给定范围内的水仙花数。难点在于要分解出三位数的个位数、十位数和百位数。下面用153为例,分解百位数、十位数和个位数分解百位数:153//100=1分解十位数:153//10%10=5分解个位数:153%10=3其实只要把要分解的数字想办法弄到个位上去,即往前点小数点,如要分解百位数就要把1弄到个位数上去即往前点2为即1.53,分解十位数即将小数点往前点1原创 2021-03-01 06:44:01 · 589 阅读 · 0 评论 -
python基本算法合集(10)——给出范围区间,找出区间内的所有的素数并将素数求和
所谓素数就是除了1和本身之外的不能再被其他数整除的数叫素数程序要求由用户给定求素数的范围,再这个范围内找出符合要求的全部素数,并将其打印出是哪些,同时求和所有的素数。程序如下:import randomlower = int(input("输入区间最小值: "))upper = int(input("输入区间最大值: "))sum=0for num in range(lower,upper + 1): # 素数大于 1 if num > 1: f原创 2021-02-28 08:17:01 · 1303 阅读 · 0 评论 -
python基本算法合集(9)——暂停一秒输出
今天带来的是让程序输出字典的第一个KEY和VALUE,暂停5秒后再输出字典的第二个KEY和VALUE程序如下:#题目:暂停一秒输出。#程序分析:使用 time 模块的 sleep() 函数。import timemyD={1:'a',2:'b'}for key,value in dict.items(myD): print(key,value) time.sleep(5)#暂停5秒再输出 print('暂停5秒')执行效果如下:...原创 2021-02-27 16:43:01 · 542 阅读 · 0 评论 -
python基本算法合集(8)——九九乘法表
今天给大家带来的是九九乘法表的程序,具体就不分析了,自己看吧,很简单的算法。for i in range(1,10): for j in range(1,i+1): print('{}x{}={}'.format(j,i,i*j),end=' ') print('\n')#当循环结束后打印换行....原创 2021-02-26 08:23:54 · 148 阅读 · 0 评论 -
python基本算法合集(7)——将一个列表中的数据复制到另外一个列表中
今天的题目比较简单,只需要将一个列表中的数据全部或部分复制到另外一个新的列表中,可以使用切片的方法完成。a=[1,2,3]b=a[:]#切片操作,冒号前后没有数字的表示将a列表的全部元素赋值到b列表中。#列表的索引如果从左到右的那么索引从0开始,如果从右往左的那么索引-1开始。print (b)如果需要将部分数据复制到新的列表中,可以在新列表中指定索引如b=a[1:]即表示从a列表中的第二个数据开始到最后一个数据复制给新的列表:a=[1,2,3]b=a[1:]#切片操作,冒号前后没有数字原创 2021-02-25 08:25:40 · 1832 阅读 · 0 评论 -
python基本算法合集(6)——兔子问题
有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少。这题实际上是个斐波那契数列的实际应用。废话不说,直接上代码了(斐波那契数列之前的博文讲过了)'''有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?'''f1 = 1f2 = 1for i in range(1,22): print ('%12ld%1...原创 2021-02-24 08:30:00 · 1447 阅读 · 0 评论 -
python基本算法合集(5)——数字排序
上期我们写了企业奖金发放问题的算法。本次我们来写个数字排序的基础算法。我们要求:由用户输入随机的5个数字,用sort()函数排序,sort函数中有个参数reverse当它为true时表示降序,当它为flase时表示升序,且reverse=false是默认的即对输入的数字进行升序为默认的。j=[]for i in range(5): x=int(input('integer:\n')) j.append(x)j.sort(reverse=True)#排序函数sort(revers原创 2021-02-23 08:44:56 · 452 阅读 · 0 评论 -
python基础算法合集(4)企业奖金提成问题
上期我们用穷举法编写了不重复的3位数并统计这样的数有多少个。本期,我们要解决的数学问题是企业发放奖金问题。问题如下:企业发放的奖金根据利润提成:利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;我们要求:由用户输入净利润,然后有程序判断要发多少奖金。这题实际上是区间问.原创 2021-02-22 18:22:33 · 1589 阅读 · 0 评论 -
python基础算法合集(3)找不重复的数字组合并统计有多少个这样的数字
上篇文字我们用递归的方法编写了斐波那契数列,本期我们编写一个找不重复的数字组合:有这样4个数字:1、2、3、4,要求组成不重复的三位数数字,并在最后统计出这样的数字有多少个?很显然,用穷举法例举出所有的可能,再将例举出来的数字逐位比较。程序如下:#有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?sum=0for i in range(1,5): for j in range(1,5): for k in range(1,5):原创 2021-02-22 10:49:00 · 471 阅读 · 0 评论 -
python基础算法合集(2)(递归算法)斐波那契数列
上期我们用最普通的算法写了斐波那契数列,本期我们用递归的算法写。同样的程序效果。所谓递归就是函数自己调用自己,但首先递归需要有个出口,不然程序会 陷入死循环的。用递归写斐波那契数列:递归算法主要是通过列表的切片功能判断数字的索引,即本程序是通过索引的位置计算斐波那契数列的值的。首先定义一个函数体fib(n),参数是接收由用户输入的数列的长度,如果索引是1或2,表示数列的第一个和第二个数字,那么就返回[1]、[1、1],通过这个功能将第一个和第二个数字剔除了。那么从所以2开始就是表示数列的第三个是数字原创 2021-02-22 09:09:10 · 452 阅读 · 0 评论 -
python基础算法合集(1)(普通算法)斐波那契数列
JAVA转行人的python学习之路斐波那契数列是指这样的一组数列:0、1、1、2、3、5、8、13、21、34、55、……我们会发现从第三个数字开始等于前两个数字之和即2=1+1,那么我们可以先将最前面的两个数字先放在列表中(list),再把后面的数字依次利用列表的append方法添加到列表的后面即list1.append(Num)先可以把最前面的0和1分别赋值给a和b,再算这两个数字之和赋值给变量c即c=a+b,既然第3个数字等于前两个数字之和,那么第N个数字等于(N-2)+(N-1)之和,那么原创 2021-02-21 20:15:53 · 115 阅读 · 0 评论