有不少同学学完Python后依然很难将其灵活运用。我整顿15个Python入门的小程序。在实践中利用Python会有事倍功半的成果。
01 实现二元二次函数
实现数学里的二元二次函数:f(x, y) = 2x^2 + 3y^2 + 4xy,须要用到指数运算符**
"""二元二次函数"""x = int(input('输出x:'))y = int(input('输出y:'))z = 2 * x ** 2 + 3 * y ** 2 + 4 * x * yprint('f(%d, %d) = %d' % (x, y, z))
02 拆散整数的个位数
将一个正整数的个位数,以及除个位数外的局部拆散。须要用到模(取余数)运算符%,和整除运算符//
"""拆散整数个位数"""x = int(input('输出整数:'))single_dig = x % 10exp_single_dig = x // 10print('个位数: %d' % single_dig)print('除个位数外: %d' % exp_single_dig)
03 实现一个累加器
实现一个简略的累加器,能够承受用户输出3个数字,并将其累加。须要用到复合赋值运算符:+=
"""累加器 v1.0"""s = 0x = int(input('输出整数:'))s += xx = int(input('输出整数:'))s += xx = int(input('输出整数:'))s += xprint('总和:%d' % s)
04 判断平年
输出年份,判断是否是平年。平年判断办法:能被4整除,但不能被100整除;或者能被 400 整除。须要用到算术运算符和逻辑运算符
"""判断平年"""year = int(input('输出年份: '))is_leap = year % 4 == 0 and year % 100 != 0 or year % 400 == 0print(is_leap)
05 判断奇偶数
输出一个数字,判断基数还是偶数,须要模运算和if ... else构造
"""判断奇偶数"""in_x = int(input('输出整数:'))if in_x % 2 == 0: print('偶数')else: print('奇数')
06 摄氏度与华氏度互转
之前做过华氏度转摄氏度,当初通过分支构造实现二者互转。
"""摄氏度与华氏度调换"""trans_type = input('输出转摄氏度还是华氏度:')if trans_type == '摄氏度': # 执行华氏度转摄氏度的逻辑 f = float(input('输出华氏温度:')) c = (f - 32) / 1.8 print('摄氏温度为:%.2f' % c)elif trans_type == '华氏度': # 执行摄氏度转华氏度的逻辑 c = float(input('输出摄氏温度:')) f = c * 1.8 + 32 print('华氏温度为:%.2f' % f)else: print('请输出 华氏度 或 摄氏度')
07 是否形成三角形
输出三个边长度,判断是否形成三角形。形成三角形的条件:两边之和大于第三边。
"""是否形成三角形"""a = float(input('输出三角形三条边:\n a = '))b = float(input(' b = '))c = float(input(' c = '))if a + b > c and a + c > b and b + c > a: print('可能形成三角形')else: print('不能形成三角形')
08 输入问题等级
输出问题分数,输入分数对应的等级。
=90分得A,[80, 90) 得B,[70, 80)得C,[60, 70)得D,< 60得E
"""输入问题等级"""score = float(input('请输出问题: '))if score >= 90: grade = 'A'elif score >= 80: grade = 'B'elif score >= 70: grade = 'C'elif score >= 60: grade = 'D'else: grade = 'E'print('问题等级是:', grade)
09 计算提成
某企业的奖金依据销售利润依照如下规定计算提成。输出销售利润,计算奖金。
利润 <= 10万,奖金可晋升10%
援用
10万 < 利润 <= 20万,高出10万的局部进步 7.5%
援用
20万 < 利润 <= 40万,高出20万元的局部进步5%
援用
40万 < 利润 <= 60万,高出40万元的局部进步3%
援用
利润 > 60万,超过60万的局部进步1%
"""计算提成 v1.0"""profit = float(input('输出销售利润(元): '))if profit <= 100000: bonus = profit * 0.1elif profit <= 200000: bonus = 100000 * 0.1 + (profit - 100000) * 0.075elif profit <= 400000: bonus = 100000 * 0.1 + 200000 * 0.075 + (profit - 200000) * 0.05elif profit <= 600000: bonus = 100000 * 0.1 + 200000 * 0.075 + 400000 * 0.05 + (profit - 400000) * 0.03else: bonus = 100000 * 0.1 + 200000 * 0.075 + 400000 * 0.05 + 600000 * 0.03 + (profit - 600000) * 0.01print('奖金:%.2f' % bonus)
10 猜数游戏
程序随机生成一个正整数,用户来猜,程序依据猜的大小给出相应的提醒。最初,输入用户猜了多少次才猜中。
"""猜数游戏"""import randomanswer = random.randint(1, 100)counter = 0while True: counter += 1 number = int(input('猜一个数字(1-100): ')) if number < answer: print('再大一点') elif number > answer: print('再小一点') else: print('猜对了') breakprint(f'共猜了{counter}次')
11 打印乘法口诀表
"""打印乘法口诀表"""for i in range(1, 10): for j in range(1, i + 1): print(f'{i}*{j}={i * j}', end='\t')
12 是否是素数
输出一个正整数,判断是否是素数。素数定义:大于1的自然数中,只能被1和它自身整除的自然数。如:3、5、7
"""判断是否是素数"""num = int(input('请输出一个正整数: '))end = int(num // 2) + 1 # 只判断前半部分是否能整除即可,前半部分没有能整除的因而,后半局部必定也没有is_prime = Truefor x in range(2, end): if num % x == 0: is_prime = False breakif is_prime and num != 1: print('素数')else: print('不是素数')
range(2, end) 能够生成 2, 3, ... end序列,并顺次赋值给 x 执行循环。range还有如下用法
range(10):生成 0, 1, 2, ... 9 序列
援用
range(1, 10, 2):生成 1, 3, 5, ... 9 序列
13 猜拳游戏
用程序实现石头剪刀布游戏。
"""猜拳游戏"""# 0代表布,1代表剪刀,2代表石头import randomrule = {'布': 0, '剪刀': 1, '石头': 2}rand_res = random.randint(0, 2)input_s = input('输出石头、剪刀、布:')input_res = rule[input_s]win = Trueif abs(rand_res - input_res) == 2: # 相差2阐明是布和石头相遇,出布一方胜 if rand_res == 0: win = Falseelif rand_res > input_res: # 相差1的状况谁大谁赢 win = Falseprint(f'程序出:{list(rule.keys())[rand_res]},输出:{input_res}')if rand_res == input_res: print('平')else: print('赢' if win else '输')
14 字典排序
字典的key是姓名,value是身高,当初须要依照身高对字典从新排序。
"""字典排序"""hs = {'张三': 178, '李四': 185, '王麻子': 175}print(dict(sorted(hs.items(), key=lambda item: item[1])))
15 二元二次函数 v2.0
将二元二次函数封装在函数中,不便调用
"""二元二次函数 v2.0"""def f(x, y): return 2 * x ** 2 + 3 * y ** 2 + 4 * x * yprint(f'f(1, 2) = {f(1, 2)}')
最初
初学python的小伙伴留神哦~不要只依赖于教程,而漠视实操的能力。不然,是很难有提高的。能够多动动手,尝试一下,积攒教训。
心愿对你们有帮忙,喜爱这篇内容的小伙伴们就点个赞和关注!