Python
Python是一种计算机程序设计语言,Python的设计哲学强调代码的可读性和简洁的语法。相比于C++或Java,Python让开发者能够用更少的代码表达想法。
希光之旅
想去周游世界
展开
-
Python计算100-999以内所有的“水仙花数”
1.题目打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。2.程序分析利用for循环控制100-999个数,每个数分解出个位,十位,百位。for i in range(100, 1000): a = i % 10 b = int(i / 100) c = (int(i / 10)) % 10 if i == a ** 3 + b ** 3 + c **原创 2021-01-17 10:30:19 · 5985 阅读 · 0 评论 -
Python解决猴子吃桃问题
1.题目猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。2.程序分析采取逆向思维的方法,从后往前推断。x2 = 1for day in range(9,0,-1): x1 = (x2 + 1) * 2 x2 = x1print("第一天共摘了%d个桃子!" % x1)...原创 2021-01-16 16:13:56 · 2512 阅读 · 0 评论 -
Python带你快速解决自由落体运动(一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?)
1.题目一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?Sn = 100.0Hn = Sn / 2for n in range(2,11): Sn += 2 * Hn Hn /= 2print('Total of road is %f' % Sn)print('The tenth is %f meter' % Hn)...原创 2021-01-16 16:11:43 · 5087 阅读 · 0 评论 -
Python快速找出1000以内的所有完数
1.题目一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程。找出1000以内的所有完数。(可参照我发布的《分解质因数》的那篇文章瞧瞧)from functools import reducedef sum(a, b): return a + bfor i in range(2, 1001): l = [1] for j in range(2, int(i / 2 + 1)): if i % j == 0:原创 2021-01-16 16:09:50 · 4361 阅读 · 1 评论 -
用Python计算s=a+aa+aaa+aaaa+aa...a的值(a是一个数字)
1.题目求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。2.程序分析关键是计算出每一项的值。from functools import reducefrom pip._vendor.distlib.compat import raw_inputTn = 0Sn = []n = int(raw_input('n = :'))a = int(raw_input('a = :'))for原创 2021-01-16 16:06:59 · 6516 阅读 · 0 评论 -
用Python统计字符串个数
1.题目输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。2.程序分析利用while语句,条件为输入的字符不为’\n’.from pip._vendor.distlib.compat import raw_inputs = raw_input('请输入字符串:\n')letters = 0space = 0digit = 0others = 0for c in s: if c.isalpha(): letters += 1 elif c.原创 2021-01-16 16:04:50 · 15371 阅读 · 0 评论 -
Python利用条件运算符输出学生成绩等级
1.题目利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。2.程序分析(a>b)?a:b这是条件运算符的基本例子(三目运算符)。from pip._vendor.distlib.compat import raw_inputscore = int(raw_input('请输入分数:\n'))if score >= 90: grade = 'A'elif score >= 60: grad原创 2021-01-16 16:02:43 · 3912 阅读 · 0 评论 -
Python将一个正整数分解成质因数
1.题目将一个正整数分解质因数。例如:输入90,打印出90=233*5。2.程序分析对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n, 重复执行第一步。(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。from sys import stdoutfrom pip._vendor.dist原创 2021-01-16 15:59:23 · 6666 阅读 · 0 评论 -
Python判断101-200之间有多少个素数
1.题目判断101-200之间有多少个素数,并输出所有素数。2.程序分析判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。count = 0leap = 1from math import sqrtfor m in range(101, 201): k = int(sqrt(m + 1)) for i in range(2, k + 1): if m % i == 0: leap = 0原创 2021-01-16 15:50:56 · 4215 阅读 · 0 评论 -
Python解决兔子生小宝宝问题
1.题目古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?2.程序分析兔子的规律为数列1,1,2,3,5,8,13,21…(斐波拉几数列)f1 = 1f2 = 1for i in range(1, 21): print('%12d %12d' % (f1, f2)) if (i % 2) == 0: print(end='') f1 = f1 + f2 f2原创 2021-01-16 15:47:36 · 300 阅读 · 0 评论 -
利用Python打印出简式楼梯
1.题目打印楼梯,同时在楼梯上方打印两个笑脸。2.程序分析用i控制行,j来控制列,j根据i的变化来控制输出黑方格的个数。import syssys.stdout.write(chr(1))sys.stdout.write(chr(1))print('')for i in range(1, 11): for j in range(1, i): sys.stdout.write(chr(219)) sys.stdout.write(chr(219))原创 2021-01-16 15:43:33 · 707 阅读 · 0 评论 -
让Python带你回忆:今天是这年的第几天?
1.题目输入某年某月某日,判断这一天是这一年的第几天?(闰年和平年,2月份也要考虑哦)2.分析以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。from pip._vendor.distlib.compat import raw_inputyear = int(raw_input('year:'))month = int(raw_input('month:'))day = int(raw_input('day:'))m原创 2021-01-15 13:49:41 · 154 阅读 · 0 评论 -
Python编程:完全平方数
1.题目题目:一个整数,它加上100后是一个完全平方数,再加上268又是一个完全平方数,请问该数是多少?完全平方指用一个整数乘以自己例如11,22,3*3等,依此类推。若一个数能表示成某个整数的平方的形式,则称这个数为完全平方数。完全平方数是非负数,而一个完全平方数的项有两个。注意不要与完全平方式所混淆。2.程序分析在1万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。请看具体代码:import mathfor i in range(原创 2021-01-15 13:48:21 · 8306 阅读 · 1 评论 -
Python简单的信息录入可视化界面
1.题目利用Python编写一个录入学生信息(姓名、年龄、性别)的可视化窗口。2.代码from tkinter import *import tkinter.messagebox as messageboxroot = Tk()root.title("信息录入")root.geometry('300x300')input1 = Label(root, text="输入姓名:")input1.pack()name_text = StringVar()name = Entry(root原创 2021-01-15 13:46:32 · 5309 阅读 · 5 评论 -
Python教你如何判断回文数字
1.回文数字的定义回文数字(或回文数)是指一个像14641这样“对称”的数,即:将这个数的数字按相反的顺序重新排列后,所得到的数和原来的数一样。这里,“回文”是指像“妈妈爱我,我爱妈妈”这样的,正读反读都相同的单词或句子。2.题目判断12321是否是回文数字?并在控制台打印出来。#判断是否为回文数字def hw(m): tmp = m n = 0 while m: t = int(m) % 10 n = n * 10 + t原创 2021-01-15 13:10:21 · 2225 阅读 · 0 评论 -
Python以不同的形式输出被整除的数
1.题目I"""输出100内所有可以被3整除的数"""for i in range(1, 100): if i % 3 == 0: print(i, end=" ")2.题目Ⅱ3和5的最小公倍数是15,所以要使该数同时被3和5整除的话,一定要该数整除15即可。# 输出100内所有可以被3、5整除的数for i in range(1, 100): if i % 15 == 0: print(i, end=" ")3.题目III这道题主要是原创 2021-01-14 13:46:34 · 6072 阅读 · 0 评论 -
Python编程:毫秒数换算成常见的小时数、分钟数、秒数
1.题目请你随便输入一个毫秒数,快速换算成常见的小时数、分钟数、秒数。# 如何让python计算结果保留两位小数A:## 设结果为a:# 1)round(a,2)# 2)’%.2f’ % a# 3)Decimal(a).quantize(Decimal(‘0.00’))2.代码展示def TimeConverter(): ms = int(input('请输入毫秒数:')) # 保留两位小数,但若ms太小,h就会显示为0。 s = round(ms / 1000原创 2021-01-14 13:43:09 · 4226 阅读 · 0 评论 -
学生分数等级用Python查询更方便,你Get到了吗?
1.题目假如各学科的分数总分为100分,等级分别划分为A等级(≥90分)、B等级(≥80分)、C等级(≥70分)、D等级(≥60分)、E等级(0≤ X <60分),请你随意输入一个0 - 100分的数字,判断它的等级并在控制台打印出来。2.结果展示程序一是先考虑等级为空,当然程序二是最简洁的,直接定义等级,单独考虑分数。程序一:"""方法一"""score = int(input("请输入一个在0-100 之间的数字:"))grade = ""while grade == "": #原创 2021-01-14 13:08:58 · 1128 阅读 · 0 评论 -
利用python录入查询准确的员工个人薪资及平均薪资
1.题目员工一共 4 人。录入这 4 位员工的薪资。全部录入后,打印提示“您已经全部录 入 4 名员工的薪资”。最后,打印输出录入的薪资和平均薪资。2.解题思路可以参照前面馨儿给大家发布的文章内容《python一键录入查询员工薪资》哦!只是这篇文章的题目确认了员工具体人数,而不能自己无限输入每个员工的薪资。(区别就在这儿)利用for循环准确指出循环几次(即几个员工),再嵌套if……else循环利用append() 方法用于在列表末尾添加新的对象,最后输出录入的薪资和平均薪资。3.代码一sum原创 2021-01-14 13:04:13 · 3926 阅读 · 0 评论 -
Python一秒算出数列的累加和
1.题目求出sum = 1 + 2 + 3 + …… + n / (n + 1)。2.代码展示强调一遍:输入的number等同于这个数列中的n,也相当于第几项的数列,求总和。def m(): sum = 0 n = int(input("Please Enter a number:")) for i in range(n + 1): sum += (i / (i + 1)) print('The total is:', sum)m()..原创 2021-01-14 12:59:29 · 1498 阅读 · 0 评论 -
Python编写中国象棋棋盘(可视化页面)
1.自定义画布面板大小和顶点位置import turtle # 导入turtle库函数,重中之重# 定义画布大小和顶点位置turtle.setup(width=800, height=880, startx=600, starty=0)turtle.screensize(300, 300, "white") # 这是棋盘的宽和高,还有背景颜色设置2.自定义画笔的各种设置s = turtle.Pen() # 为了后面函数调用的各种烦杂设置原创 2021-01-14 12:52:25 · 3045 阅读 · 0 评论 -
Python教你一招搞定数字的“逆序排列”
1.题目定义一个函数,将输入的参数拆成列表元素,通过sort()逆序排列后再输出。如:输入3245,输出54322.解题思路法一:自定义函数sort_num(),分别用n1和n2代表前后两个数,再打印出交换位置后的n2数字,最后调用sort_num()函数。缺点是只能手动调入,不能在python控制台后端任意输入。法二:这个针对法一灵活得多,弥补了法一的缺点,可以在后端任意输入任何数字。运用for循环和append()函数追加数字,然后调用逆序函数sort(),最后将列表转换为字符串。3.代码原创 2021-01-14 12:35:26 · 10430 阅读 · 0 评论 -
Python画同心圆(适合基础练习)
开始学习python这门课的时候,第一个认识的就是如何导入turtle库和运用turtle库。1.Turtle库介绍Turtle库是Python语言中一个很流行的绘制图像的函数库,turtle中文意思是海龟,也就是我们把画画,想象成一只海龟爬行的路线。Turtle库运用数学中坐标系的概念,在一个横轴为x、纵轴为y的坐标系原点,也就是(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。2.Turtle库坐标体系(熟记)import turtle.原创 2021-01-14 12:06:33 · 16197 阅读 · 0 评论 -
用python一键录入查询员工的薪资
1 题目要求输入员工的薪资,若薪资小于 0 则重新输入。最后打印出录入员工的数量和薪资明细,以及平均薪资。1.1 方法一count = 0 # 统计员工的数量sum = 0 # 统计总的薪资salarys = [] # 存放薪资明细while True: salary = input("请输入员工的薪资(按quit退出):") if salary.lower() == "quit": break; else: if int(sal原创 2021-01-14 12:02:39 · 1657 阅读 · 0 评论 -
Python可以这样计算顶点坐标类型的三角形面积
1.三角形面积1.1 解题思路首先判断三个顶点是否在同一条直线上,若是,则为无效坐标,给出提示,若不是,则根据给出的坐标算出三条边,然后按照海伦公式算出半周长,再计算三角形面积。import math# 方法一:表示坐标用eval()函数# x1, y1 = eval(input('x1,y1:'))# x2, y2 = eval(input('x2,y2:'))# x3, y3 = eval(input('x3,y3:'))# 方法二:用数学括号坐标的形式,比较简化(x1, y1),原创 2021-01-14 11:52:56 · 3958 阅读 · 1 评论 -
学会了Python,你可以这样画C图案
1.题目用*号输出字母C的图案2.程序分析可先用’*'号在纸上写出字母C,再分行输出。3.代码print('Hello Python world!\n')print('*' * 10)for i in range(5): print('* ')print('*' * 10)原创 2021-01-13 19:52:29 · 1049 阅读 · 2 评论 -
Python教你如何将3个数升序排列
1.题目输入三个整数x,y,z,请把这三个数由小到大输出(升序排列)。2.程序分析我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。3.程序代码from pip._vendor.distlib.compat import raw_inputl = []for i in range(3): x = int(raw_input('input a integer:'))原创 2021-01-13 19:34:41 · 4729 阅读 · 0 评论 -
注意了,用Python解决企业奖金问题
1.题目企业发放的奖金根据利润提成。利润(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,求应发放奖金总数?2.分析请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。转载 2021-01-11 16:50:13 · 360 阅读 · 0 评论 -
用python编写互不相同且无重复数字的三位数
1.题目有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?2.程序分析可填在百位、十位、个位的数字都是1、2、3、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,原创 2021-01-11 16:36:10 · 3014 阅读 · 1 评论 -
Python的7个经典程序
1 统计《西游记》中主要人物的出场次数1.1 代码实现print("西游记人物出场次数如下:")import jiebaimport timestart = time.perf_counter()text = open("C:\Python\西游记.txt", "r", encoding="gb18030").read()excludes = {"一个", "那里", "怎么", "我们", "不知", "两个", "甚么", "只见", "不是", "原来", "不敢", "闻言", "如何原创 2021-01-06 10:09:52 · 5093 阅读 · 0 评论 -
Python解决斐波拉几数列
1.斐波拉几数列的定义斐波那契数列(Fibonacci sequence),又称黄金分割数列、兔子数列,是数学家列昂纳多·斐波那契于1202年提出的数列。斐波那契数列为1、1、2、3、5、8、13、21、34……此数列从第3项开始,每一项都等于前两项之和,递推公式为F(n)=F(n-1)+F(n-2),n≥3,F(1)=1,F(2)=1。在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究原创 2021-01-10 17:07:22 · 2198 阅读 · 0 评论 -
利用Python输出100-200以内的素数
1.法一from math import sqrtdef main(): for i in range(100, 201): flag = 1 k = int(sqrt(i)) for j in range(2, k + 1): if i % j == 0: flag = 0 break if flag == 1: p原创 2021-01-10 16:23:03 · 28746 阅读 · 0 评论 -
Python——利用列表和字典存储信息
标题用列表和字典存储下表信息,并打印出表中工资高于 15000 的数据题目:姓名年龄薪水城市高小一18岁30000北京高小二19岁20000上海高小三20岁10000深圳提示:以下是本篇文章正文内容,下面案例可供参考一、解题思路题中说利用字典,首先想到Python中的内置函数——dict() 函数用于创建一个字典。再用一个变量tb(table)表格,将元素定义成数组,最后通过for循环和if结构查找出薪水大于15000的属性值,最后把结原创 2021-01-07 11:07:33 · 3959 阅读 · 0 评论