今天分享10个我保存下来的小案例,都是一些非常基础的知识点,适合初级入门的小白用来练手....
有点姿势水平的就别看啦...
总之入门的看起来没什么问题啦...
实在记不得当初从哪里找到的了....所以也没办法贴原文啦...
侵删...
案例一:排列组合
要求:
将4个数字可能组成的所有互不相同且无重复数字的排列组合列出。
分析:
有什么好分析的...排列就好了
代码:
for i in range(1,5): for j in range(1,5): for k in range(1,5): if( i != k ) and (i != j) and (j != k): print(i,j,k)
案例二:阶梯求和
要求:
企业实行阶梯制销售绩效方案。现规定:
销售额低于或等于10万时,提成10%;
销售额低于或等于20万时,超过10万的部分提成7.5%,其他从上;
销售额低于或等于40万时,超过20万的部分提成5%,其他从上;
销售额低于或等于60万时,超过40万的部分提成3%,其他从上;
销售额低于或等于100万时,超过60万的部分提成1.5%,其他从上;
销售额高于100万元时,超过100万的部分提成1%,其他从上。
要求输入某人的销售额,得出应发绩效。
分析:
1.利用数轴来分界,定位。
2.哪有销售额越高提成越低的道理啊...
代码:
bonus1 = 100000 * 0.1 bonus2 = bonus1 + 100000 * 0.500075 bonus4 = bonus2 + 200000 * 0.5 bonus6 = bonus4 + 200000 * 0.3 bonus10 = bonus6 + 400000 * 0.15 i = int(input('input gain:\n')) if i <= 100000: bonus = i * 0.1 elif i <= 200000: bonus = bonus1 + (i - 100000) * 0.075 elif i <= 400000: bonus = bonus2 + (i - 200000) * 0.05 elif i <= 600000: bonus = bonus4 + (i - 400000) * 0.03 elif i <= 1000000: bonus = bonus6 + (i - 600000) * 0.015 else: bonus = bonus10 + (i - 1000000) * 0.01 print('bonus = ',bonus)
案例三:求整数值
要求:
设有整数i,i+100是一个完全平方数,再加168又是一个完全平方数,求出该整数的值。
分析:
在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。
代码:
import math for i in range(1000000000): #转化为整型值 x = int(math.sqrt(i + 100)) y = int(math.sqrt(i + 268)) if(x * x == i + 100) and (y * y == i + 268): print(i)
案例四:判断天数
要求:
顺序输入年、月、日,判断输入日期是该年份的第几天。
分析:
输入任意日期如5月3日,现将1-4月天数相加,再加当前日期5即可。注意闰年的形式。
代码:
year = int(input('year:\n')) month = int(input('month:\n')) day = int(input('day:\n')) months = (0,31,59,90,120,151,181,212,243,273,304,334) if 0 <= month <= 12: sum = months[month - 1] else: print('data error') sum += day leap = 0 if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)): leap = 1 if (leap == 1) and (month > 2): sum += 1 print('it is the %dth day.' % sum)
案例五:整数排序
要求:
输入三个整数xyz,并将其按大小顺序输出。
分析:
慢一点的话,就是挨个比较大小,不过Python列表可以用sort函数,所以就方便多了。
代码:
l = [] for i in range(3): x = int(input('integer:\n')) l.append(x) l.sort() print(l)
案例六:输出字符画
要求:
使用“*”输出简单的字母P。
分析:
...无语中...
代码:
print('Hello Python world!\n') print('*' * 10) for i in range(5): print('* *') print('*' * 10) print('*\n' * 6)
案例七:chr使用
要求:
没有要求啦...感觉完全是作者在炫技而已
分析:
恩,自己去看看吧
代码:
a = 176 b = 219 print(chr(b),chr(a),chr(a),chr(a),chr(b)) print(chr(a),chr(b),chr(a),chr(b),chr(a)) print(chr(a),chr(a),chr(b),chr(a),chr(a)) print(chr(a),chr(b),chr(a),chr(b),chr(a)) print(chr(b),chr(a),chr(a),chr(a),chr(b))
案例八:乘法口诀表
要求:
输出99乘法表。
分析:
入门必做的案例吧...不分析了...
代码:
for i in range(1,10): for j in range(1,10): result = i * j print('%d * %d = % -3d' % (i,j,result)) print('')
案例九:输出棋盘
要求:
输出国际象棋的棋盘(黑白格)
分析:
用i控制行,j来控制列,根据i+j的和的变化来控制输出黑方格,还是白方格。
代码:
import sys for i in range(8): for j in range(8): if(i + j) % 2 == 0: sys.stdout.write(chr(219)) sys.stdout.write(chr(219)) else: sys.stdout.write(' ') print('')
案例十:打印楼梯
要求:
打印一个楼梯图形。
分析:
用i控制行,j来控制列,j根据i的变化来控制输出黑方格的个数。
代码:
for i in range(1,11): for j in range(1,i): sys.stdout.write(chr(219)) sys.stdout.write(chr(219)) print('')
然后,我这里整理了一些Python学习资料,有需要的朋友可以关注并私信“01”免费领取