文章目录

  • 写在前面
  • 第一次大作业
  • 第二次大作业
  • 第三次大作业
  • 第四次大作业
  • 第五次大作业
  • 第六次大作业
  • 第七次大作业
  • 第八次大作业
  • 第九次大作业
  • 第十次大作业

写在前面

助教写的参考答案,嗯~ o( ̄▽ ̄)o,仅供参考
题目见我的另一篇博客,诶不过大多数都有在程序的最顶端有备注题目
这篇只是在复习之余随便写了玩玩的

同学试图用这个复习,发现看不懂,那可不,因为有的部分用了简洁的算法,比如递归什么的,还有的指令书上和ppt里都没有,只是讲解的时候跟我们提到过,让我们了解一下他的代码到底在说个啥
所以说上编程课不听甚至逃课,要么自学力惊人,要么有雄厚底蕴,要么……等死(“明年再见ヾ( ̄▽ ̄)”)

-“老师,帮我看看这个程序呗,上次做的大作业,有个bug不能dig”
-“等会助教会来的鸭,作业问题你问他就好了,还有不是每次都有分析题目的吗?”
-“可是他用的东西,大多数,超纲啊……”
-“噗”

大佬学长:“受人之托(有人出钱让他帮忙给他讲python,顺便做大作业),我只做我该做的事”,“我经常写超纲东西给他交上去,没有什么关系的”

确实

第一次大作业

"""
一年365天,以第1天的能力值为基数,记为1.0,当好好学习时能力值相比前一天提高1‰,当没有学习时由于遗忘等原因能力值相比前一天下降1‰。每天努力和每天放任,一年下来的能力值相差多少呢?输出能力上升与下降两者间的差值。
"""dayup = (1.0 + 0.01)**365
daydown = (1.0 - 0.01)**365
print("每天努力:{:.2f},每天放任:{:.2f}".format(dayup,daydown))
print("dayup=",dayup)
# -*- coding: utf-8 -*-
"""一年365天,一周5个工作日,如果每个工作日都很努力,可以提高1%,仅在周末放任一下,能力值每天下降1%,效果如何呢?请输出一年后提高的倍数。"""power = 1
for i in range(365):if i % 7 in [0,6]:power = power * (1 - 0.01)else:power = power * (1 + 0.01)
print("每周向上5天向下2天的能力值:{:.2f}".format(power))
# -*- coding: utf-8 -*-
"""
如果每周连续努力5天,休息2天,为了达到每天努力1%所达到的的水平,计算:需要在工作日将提高的程度达到多少?
"""#一     (1+1%)^365=(1+x)^260   52周
x=(1+0.01)**(365/260)-1
print(x)#二  休息的两天下降1%def dayUP(df):day = 1.0for i in range(365):if i % 7 in [6, 0]:day = day * (1 - 0.01)else:day = day * (1 + df)return daydayf = 0.01
while (dayUP(dayf)<37.78):dayf += 0.001
print("每天的努力参数是: {:.3f}.".format(dayf))

第二次大作业

pos = int(input("请输入月份"))
months=["January","February","March","April","May","June","July","August","September","October","November","December"]
print(months[pos-1]);
# -*- coding: utf-8 -*-
"""
编写一个程序:从键盘输入某个分钟数,将其转化为用小时和分钟表示。
"""time = int(input("请输入分钟数:"))minute=time%60hour=int(time/60)print(hour,"小时",minute,"分钟")
# -*- coding: utf-8 -*-
"""
编写计算圆面积和球体积的程序,输出结果。
"""import mathradius = float(input("请输入半径:"))S=math.pi*radius**2V=(4/3)*math.pi*radius**3print("面积为:{:.2f}".format(S))
print("体积为:{:.2f}".format(V))
# -*- coding: utf-8 -*-
"""
4.输入平面上的两个点,计算两点的距离。
"""x1 = float(input("请输入x1="))
y1 = float(input("请输入y1="))
x2 = float(input("请输入x2="))
y2 = float(input("请输入y2="))distance = ((x2-x1)**2+(y2-y1)**2)**(1/2)
print("距离为{:.2f}.".format(distance))

第三次大作业

# -*- coding: utf-8 -*-
"""
将百分制转换为五级制,即成绩不低于90分用“优秀”表示,80~89用“良好”表示,70~79用“中等”表示,60~69用“及格”表示,低于60用“不及格”表示。
"""score = float(input("请输入成绩:"))if score>=90:grade="优秀"
elif score>=80 and score<90:grade="良好"
elif score>=70 and score<80:grade="中等"
elif score>=60 and score<70:grade="及格"
elif  score<60:grade="不及格"print(grade)
# -*- coding: utf-8 -*-
"""
输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。"""
s =input('请输入字符串:')
dic={'letter':0,'integer':0,'space':0,'other':0}
for i in s:if i >'a' and i<'z' or i>'A' and i<'Z' :dic['letter'] +=1elif i in '0123456789':dic['integer'] +=1elif i ==' ':dic['space'] +=1else:dic['other'] +=1print('统计字符串:',s)
print(dic)
print('------------显示结果---------------')
for i in dic:print('%s='%i,dic[i])
# -*- coding: utf-8 -*-
"""
输入三角形的3条边,判断能否组成三角形。若能,计算三角形的面积。
"""
import matha=int(input("请输入边长a:"))
b=int(input("请输入边长b:"))
c=int(input("请输入边长c:"))
if a+b > c and a+c > b and b+c > a:p = (a+b+c)/2temp = p*(p-a)*(p-b)*(p-c)s = math.sqrt(temp)print("可以构成三角形", "面积为: ", s)
else:print("三边不能构成三角形!!")
# -*- coding: utf-8 -*-
"""
4.勾股定理中3个数的关系a^2+b^2=c^2.编写程序,输出30以内,满足上述条件的整数组合,如3,4,5就是一个组合。"""
for a in range(1,31):for b in range(1,31):for c in range(1,31):if a**2+b**2==c**2 and a<b<c:print(a,b,c)
# -*- coding: utf-8 -*-
"""
5.求200以内能够被13整除的最大的整数,并输出。
"""
list=[]
for i in range(1,201):if i%13==0:list.append(i)
print(list)
print("能够被13整除的最大的整数为",max(list))
# -*- coding: utf-8 -*-
"""
6.求1~100之间的所有偶数的和。
"""
sum=0
for i in range(1,101):if i%2==0:sum=sum+i
print("求1~100之间的所有偶数的和为",sum)

第四次大作业

# -*- coding: utf-8 -*-
"""
求1~100之间所有的素数,并统计素数的个数。"""num = 2
counter = 0
while num<100:flag=1i=2while i<num:if num%i==0:flag=0breaki=i+1if flag==1:counter=counter+1print(num)num=num+1
print("counter=",counter)
# -*- coding: utf-8 -*-
"""
求200以内能被17整除的最大正整数。(用while)
"""n=200while n<=200:if n%17==0:print(n)breakn=n-1
"""
猜数游戏。预设一个0~9的整数,让用户输入所猜的数。如果大于预设的数,显示“bigger”;如果小于预设的数,显示“smaller”.如此循环,直至猜中该数,显示“right”。"""num=7
while True:guess = int(input("please input a number"))if guess ==num:print("right")break;elif guess >num:print("bigger")elif guess  <num:print("smaller")
# -*- coding: utf-8 -*-
"""
用数字1、2、3、4能组成多少个互不相同且无重复数字的三位数,打印结果。"""counter=0
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):counter+=1print(i,j,k)
print("个数:",counter)
# -*- coding: utf-8 -*-
"""
Created on Wed Oct 30 15:17:24 2019@author: firstmonday
"""year = int(input("请输入年份:"))if ((year % 4 == 0) and (year % 100 != 0)) or (year % 400 == 0):print(year,"是闰年"  )
else:print(year,"不是闰年" )
# -*- coding: utf-8 -*-
"""
求斐波那西数列第n个数及前n项和
"""
"""
def fun(n):list=[1,1]for i in range(2,n):list.append(list[i-1]+list[i-2])print(list)print("第n个数为",list[n-1])sum=0for j in list:sum=sum+jprint("前n项和为",sum)a = int(input("please input n"))
fun(a)
"""def fib_recur(n):if n <= 1:return nreturn fib_recur(n-1) + fib_recur(n-2)sum=0
n = int(input("please input n"))
for i in range(1, n+1):print(fib_recur(i), end=' ')sum=sum+fib_recur(i);
print()
print("sum=",sum)

第五次大作业

# -*- coding: utf-8 -*-
"""
编制判断素数的Sub或Function函数,验证哥德巴赫猜想:一个不小于6的偶数可以表示为两个素数之和。例如,6=3+3,8=3+5,10=3+7"""def IsPrime(val):i=2while i<=val:if val%i ==0:breaki=i+1if i==val:return Trueelse:return Falseb=int(input("Please input a even"))
if b%2==0:i=1while i<=b:j=b-iif(IsPrime(j)):if(IsPrime(b-j)):print(j,"+",b-j,"=",b)i=i+1
else: print("不是偶数")
# -*- coding: utf-8 -*-
"""
实现计算表达式1+3+...+(2n-1)值的函数。
"""def sum(n):i=1s=0while i<=2*n-1:s=s+ii=i+2print("sum=",s)n=int(input("please input a number"))
sum(n)
# -*- coding: utf-8 -*-
"""
完成一个函数,将所给的(1,2,3,-5,-4,5,9,-8,-1)重新排列,使得所有负数都在正数的左边。"""
def fun():num=[1,2,3,-5,-4,5,9,-8,-1]num.sort()print(num)num1=[1,2,3,-5,-4,5,9,-8,-1]num1.sort(reverse=True)print(num1)fun()
# -*- coding: utf-8 -*-
"""
题目:假设有4种币值,面值分别为二角五分、一角、五分和一分。现在要找给某顾客六角三分钱。怎样找零钱才能给顾客的硬币个数最少
"""
"""
思路:每次选择面值不超过需要找顾客的钱的最大面值
"""
v=[25,10,5,1]
n=[0,0,0,0]
def greedy(T):if T==0:returnelif T>v[0]:T=T-v[0];n[0]=n[0]+1greedy(T)elif v[0]>=T>v[1]:T=T-v[1];n[1]=n[1]+1greedy(T)elif v[1]>=T>v[2]:T=T-v[2];n[2]=n[2]+1greedy(T)else:T=T-v[3];n[3]=n[3]+1greedy(T)def change():T=int(input("please input money"))greedy(T)count=0for i in n:count = count+iprint(n)print("硬币个数:",count)change()

第六次大作业

# -*- coding: utf-8 -*-
"""
1.a+b的n次幂的展开式中各项的系数很有规律,n=2,3,4时展开式中的各项系数分别是:1 2 1,1 3 3 1,1 4 6 4 1。这些系数构成了著名的杨辉三角形11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1
编写代码,输入n值输出杨辉三角形"""def get_triangle(num):triangle=[]for i in  range(0,num+1):tmp=[1]*(i+1)for j in range(1,i):tmp[j]=triangle[i-1][j-1]+triangle[i-1][j]triangle.append(tmp)return triangledef print_triangle(triangle):n = len(triangle)for i in range(0,len(triangle)):print(" ")for k in range(1,len(triangle)-i):print("  ",end='')for j in range(0,len(triangle[i])):print(triangle[i][j]," ",end='')triangle=get_triangle(4)
print_triangle(triangle)
"""
2. 如果有两个数,其中任一个数除它本身以外的所有因数的和正好等于另一个数,
则称这两个数互为互满数。求出3000以内所有的互满数并输出。
"""# 对因数求和
def appsum(x):s=0;i=1while i<x:if x%i == 0:s+=ii+=1return s# 遍历3000以内所有数
for i in range(1, 3000):j = appsum(i)if (appsum(j)==i and i>j): #i的因数和=j且j的约数和等于iprint(i, '与', j, '是互满数')
"""
3.验证任意一个大于5的奇数可表示为3个素数之和。
"""def IsPrime(val):i=2while i<=val:if val%i ==0:breaki=i+1if i==val:return Trueelse:return Falseb=int(input("Please input a even"))
if b%2==1:for i in range(2,b):for j in range(2,b-i):k = b-i-j;if (IsPrime(j) and IsPrime(j) and IsPrime(k) and i!=j!=k):print(i, "+", j,"+", k, "=", b)else:print("不是偶数")
"""
4.若将某素数的各位数字顺序颠倒后得到的数仍是素数,则此数称为可逆素数。
求出100以内的可逆素数。
"""def IsPrime(val):i=2while i<=val:if val%i ==0:breaki=i+1if i==val:return Trueelse:return Falsedef rev(n):x = n // 10y = n % 10r = y*10+xreturn rfor i in range(2,100):if i<10 and IsPrime(i):print("%d" % i)if (i>=10 and i<100 and IsPrime(i)):if IsPrime(rev(i)):print("%d" %i)
"""
5.将一个正整数分解质因数。例如:输入90 打印出90=2*3*3*5
"""#思路:首先判断是否是质数,然后依次进行分解。除1以外的最小质数依次整除,直到自身被整除。
num = int(input("请输入一个数:"))
print(num, end='')
print('=', end='')
while (num!=1):for i in range(2,num+1):if (num % i) == 0:num = int(num / i)if num == 1:print('%d' %i,end='')else:print('%d*'%i,end='')break

第七次大作业

"""
1、编写人员类(Person),该类具有姓名(Name)、年龄(Age)、性别(Sex)等域。
然后通过对Person类的继承得到一个教师类(Teacher),该类能够存放教师的职称、学历、工资、奖金等信息,
并能计算出总收入(工资+奖金),要求对该类构造函数进行重载。
"""class Person:# __init__方法在类的对象被创建时执行def __init__(self, Name, Age, Sex):self.Name = Nameself.Age = Ageself.Sex = Sexclass Teacher(Person):sum = 0def __init__(self, Name, Age, Sex, Title, Qual, Salary, Prize):self.Name = Nameself.Age = Ageself.Sex = Sexself.Title = Titleself.Qual = Qualself.Salary = Salaryself.Prize = Prizedef p(self):print("Name:",self.Name)print("Age:", self.Age)print("Sex:", self.Sex)print("Title:", self.Title)print("Qual:", self.Qual)print("Salary:", self.Salary)print("Prize:", self.Prize)def count(self):sum=self.Salary+self.Prizeprint("sum is",sum)tea=Teacher('li ming',20,'male','professor','doctor',5500,2000)
tea.p()
tea.count()
"""
2、实现如下功能:学校成员类具有成员的姓名和总人数属性。
老师类继承学校成员类,具有工资属性。学生类继承学校成员类,具有成绩属性。
创建对象时,总人数增一;对象注销时,总人数减一。执行结果:
学校新加入一个成员:老黄
现在有成员1人
大家好,我叫:老黄
我是老师,我的工资是:3000
学校新加入一个成员:小河
现在有成员2人
大家好,我叫:小河
我是学生,我的成绩是:77
小河离开了,学校还有1人
老黄离开了,学校还有0人
"""class SchoolMember:# 总人数,这个是类的变量sum_member = 0# __init__方法在类的对象被创建时执行def __init__(self, name):self.name = nameSchoolMember.sum_member += 1print ("学校新加入一个成员:%s" % self.name)print ("现在有成员%d人" % SchoolMember.sum_member)# 自我介绍def say_hello(self):print("大家好,我叫:%s" % self.name)# __del__方法在对象不使用的时候运行def __del__(self):SchoolMember.sum_member -= 1print("%s离开了,学校还有%d人" % (self.name, SchoolMember.sum_member))# 老师类继承学校成员类
class Teacher(SchoolMember):def __init__(self, name, salary):SchoolMember.__init__(self, name)self.salary = salarydef say_hello(self):SchoolMember.say_hello(self)print"我是老师,我的工资是:%d" % self.salarydef __del__(self):SchoolMember.__del__(self)# 学生类
class Student(SchoolMember):def __init__(self, name, mark):SchoolMember.__init__(self, name)self.mark = markdef say_hello(self):SchoolMember.say_hello(self)print"我是学生,我的成绩是:%d" % self.markdef __del__(self):SchoolMember.__del__(self)t = Teacher("老黄", 3000)
t.say_hello()
s = Student("小河", 77)
s.say_hello()

第八次大作业

"""
1、编程序,从函数输入一个字符串,将字符串中的数字删除,
并将大写字母改为小写,最后的结果在函数中打印。
例如输入Abc123De4f,则输出abcdef
"""def f(A):B = []for i in A:if i >= 'a' and i <= 'z' or i >= 'A' and i <= 'Z':B.append(i)# join()方法用于将列表中的元素以指定的字符连接生成一个新的字符串C = ''.join(B)print(C.lower())A = str(input("请输入一串字符:"))
f(A)
"""
2、编写函数,实现如下功能:从函数输入一个字符串,将
字符串中索引为偶数,同吋ASCII为奇数的字符后面加*号,
新生成的字符串在函数中打印。例如,输入字符串
ABCDEFG12345,则打印A*BC*DE*FG*12345。
"""
def fun(s):ret = ''# enumerate()函数用于将一个可遍历的数据对象组合为一个索引序列# [(0,list[0]),(1,list[1]),... ]for i,elem in enumerate(s):if i % 2 == 0 and ord(elem) % 2 != 0:ret += elem + ('*')else:ret += elem + ('')return rets = 'ABCDEFG12345'
print (fun(s))
"""
3、编写函数,统计字符串中的单词个数。例如输入 I am a boy ! 则返回单词个数为4。
"""def f(x):B=[]B=x.split() # 字符串操作:默认以空格为切分,返回列表n=len(B)print(n)x=str(input("请输入一串字符串:"))
f(x)
"""
4、创建一个字典,关键字为只包含字母的字符串a) 把字典中的键按照字母顺序显示出来。b) 根据已按照字母顺序排序好的键,显示这个字典中的键和值。
"""# 创建一个字典,并把这个字典中的键按照字母顺序显示出来
user = {'A': 'jim', 'C': 'male', 'B': 18}
a = user.keys() #keys() 函数以列表返回一个字典所有的键
b = sorted(a)
for i in b:print(i)
# 现在根据已按照字母顺序排序好的键,显示出这个字典中的键和值
for i in b:print (i, user[i])
"""
5、建立字典。输入两个长度相同的列表,比如说,列表[1,2,3,...]和['abc', 'def', 'ghi', ...],
用这两个列表里的所有数据组成一个字典。像这样:{1:'abc', 2:'def', 3:'ghi', ...}。
"""# dict()函数用于创建一个字典
# zip() 将对象中对应的元素打包成一个个元组# 映射函数方式来构造字典
listdict = dict(zip([1,2,3], ['abc','def','ghi']))
print(listdict)
"""
6. 使用random模块中的randint()生成一个随机数集合:
从0到9(包括9)中随机选择,生成1到10个随机数。这些数
字组成集合A(A可以是可变集合,也可以不是)。同理,按此
方法生成集合B,显示结果 A丨B和 A & B 。
"""
import randomtmp = []
for i in range(0, 10):tmp.append(random.randint(0, 9))
A = set(tmp)
tmp = []
for i in range(0, 10):tmp.append(random.randrange(0, 10))
B = set(tmp)print (A)
print (B)
print (A | B)
print (A & B)

第九次大作业

"""
1、将file1.txt文件中的每行按逆序方式输出到file2.txt文件中。
"""trans_file = ''# 保证无论是否出错都能正确地关闭文件,
# Python引入了with语句来自动帮我们调用close()方法with open('file1.txt') as file:# 遍历file的每一行linefor line in file:# Python列表切片应用,字符串逆序输出trans_file += line[ : :-1].strip()trans_file += '\n'with open('file2.txt', 'w') as file:file.write(trans_file)x= 'abcdaerea'
z=x[-1:3:-1]
print(z)# b = a[i:j]  表示:复制a[i]到a[j-1],以生成新的list对象
# b = a[i:j:s]  表示:i,j与上面的一样,但s表示步进,缺省为1
# 当s<0时,i缺省时,默认为-1. j缺省时,默认为-len(a)-1
"""
2、scores.txt文件存放着某班学生的计算机课成绩,包含学号、平时成绩、期末成绩三列。
请根据平时成绩占40%,期末成绩占60%的比例计算总评成绩,并按学号、总评成绩两列写入另一个文件scored.txt中。
同时在屏幕上输出学生总人数,按总评成绩计算90分以上、80-89分、70-79分、60-69分、
60分以下各成绩区间的人数和班级总平均分(取小数点后两位)
"""f = open("F:\\本科\\大一\\Python\\大作业\\python作业答案\\作业9\\2\\scores.txt")
a = f.readline()
line = (f.readline()).strip() # 移除字符串头尾空格,返回字符串
f2 = open("F:\\本科\\大一\\Python\\大作业\\python作业答案\\作业9\\2\\scored.txt",'w')
f2.write("学号 平均成绩\n")
L2 = [0,0,0,0,0]
count = 0
sum = 0
while (len(line) != 0):L1 = line.split() # 字符串操作:默认以空格为切分,返回列表f2.write(L1[0]+" ")f_score = int(int(L1[1])*0.4+int(L1[2])*0.6)if 90<f_score <=100:L2[0] += 1elif f_score >=80:L2[1] += 1elif f_score >=70:L2[2] += 1elif f_score >=60:L2[3] += 1else :L2[4] += 1count += 1sum += f_scoref2.write(str(f_score)+"\n")line = (f.readline().strip())
f.close()
f2.close()
avg_score = int(sum/count)
print("学生总人数为{0},按总评成绩计,90以上{1}人,80-90有{2}人,""70-80有{3}人,60-70有{4}人,60以下有{5}人,班级总平均分为{6}".format(count,L2[0],L2[1],L2[2],L2[3],L2[4],avg_score))

第十次大作业

# 作业1:加法程序from tkinter import *def fun1(x,y):a = xb = ys='%s+%s=%.2f\n'%(str(a),str(b),float(a)+float(b))txt.insert(END,s)def fun2():inp1.delete(0,END)inp2.delete(0,END)txt.delete(0.0,END) # text.delete(index1, index2) index1, index2 必须为 n.n的形式,#0.0代表的是下标为第0行的第0个元素,后面的tkinter.END表示末尾,#初始化Tk()
root = Tk()
root.geometry('450x350')
root.title('加法')
inp1=Entry(root)
inp1.place(relx=0.15,rely=0.1,relwidth=0.2,relheight=0.1)
inp2=Entry(root)
inp2.place(relx=0.65,rely=0.1,relwidth=0.2,relheight=0.1)
btn1=Button(root,text='加法',command=lambda:fun1(inp1.get(),inp2.get()))
btn1.place(relx=0.15,rely=0.3,relwidth=0.2,relheight=0.1)
btn2=Button(root,text='清空',command=fun2)
btn2.place(relx=0.65,rely=0.3,relwidth=0.2,relheight=0.1)
txt=Text(root)
txt.place(relx=0.15,rely=0.5,relwidth=0.7,relheight=0.4)root.mainloop()
# 作业2:四则运算程序from tkinter import *def fun1(x,y):a = xb = ys='%s加%s等于%.2f\n'%(str(a),str(b),float(a)+float(b))lab.config(text=s)def fun2(x,y):a = xb = ys='%s减%s等于%.2f\n'%(str(a),str(b),float(a)-float(b))lab.config(text=s)def fun3(x,y):a = xb = ys='%s乘以%s等于%.2f\n'%(str(a),str(b),float(a) * float(b))lab.config(text=s)def fun4(x,y):a = xb = ys='%s除以%s等于%.2f\n'%(str(a),str(b),float(a) / float(b))lab.config(text=s)#初始化Tk()
root = Tk()
root.geometry('450x350')
root.title('四则运算程序')ent1=Entry(root)
ent1.place(relx=0.1,rely=0.1,relwidth=0.2,relheight=0.1)
ent2=Entry(root)
ent2.place(relx=0.6,rely=0.1,relwidth=0.2,relheight=0.1)var = IntVar()
rb1=Radiobutton(root,text='加',variable=var,value=1,command=lambda:fun1(ent1.get(),ent2.get()))
rb1.place(relx=0.4,rely=0.3)
rb2=Radiobutton(root,text='减',variable=var,value=2,command=lambda:fun2(ent1.get(),ent2.get()))
rb2.place(relx=0.4,rely=0.4)
rb3=Radiobutton(root,text='乘',variable=var,value=3,command=lambda:fun3(ent1.get(),ent2.get()))
rb3.place(relx=0.4,rely=0.5)
rb4=Radiobutton(root,text='除',variable=var,value=4,command=lambda:fun4(ent1.get(),ent2.get()))
rb4.place(relx=0.4,rely=0.6)lab=Label(root,text=' ')
lab.place(relx=0.35,rely=0.75)root.mainloop()
from tkinter import *#初始化Tk()
root=Tk()
root.title("售票程序")
root.geometry("500x500")
label1=Label(root,text="请选择景点:")
label1.pack()var=IntVar()rd1=Radiobutton(root,text=("东方明珠"),variable=var,value=1)
rd1.pack()rd2=Radiobutton(root,text=("野生动物园"),variable=var,value=2)
rd2.pack()rd3=Radiobutton(root,text=("科技馆"),variable=var,value=3)
rd3.pack()def fun():if var.get()==1:a=160b=int(num.get())if b>=50:sum=a*0.8*belif b>=20 and b<50:sum=a*0.95*belse:sum=a*bs=("购买东方明珠票%s张,票价%d元 \n"%(b,sum))txt.insert(END,s)num.delete(0,END)elif var.get()==2:a=130b=int(num.get())if b>=50:sum=a*0.8*belif b>=20 and b<50:sum=a*0.95*belse:sum=a*bs=("购买野生动物园票%s张,票价%d元 \n"%(b,sum))txt.insert(END,s)num.delete(0,END)elif var.get()==3:a=60b=int(num.get())if b>=50:sum=a*0.8*belif b>=20 and b<50:sum=a*0.95*belse:sum=a*bs=("购买科技馆票%s张,票价%d元 \n"%(b,sum))txt.insert(END,s)num.delete(0,END)label2=Label(root,text=("请输入购票张数:"))
label2.pack()num=Entry(root)
num.pack()
bt = Button(root,text = '计算',command = fun)
bt.pack()txt=Text(root)
txt.place(relx=0.1,rely=0.45,relheight=0.5,relwidth=0.8)root.mainloop()

DHU Python Curriculumly Learning【5】——大作业_key_by_TA相关推荐

  1. DHU Python Curriculumly Learning【1】——大作业_own work

    文章目录 写在前面 第一次大作业 第二次大作业 第三次大作业 第四次大作业 第五次大作业 第六次大作业 第七次大作业 第八次大作业 第九次大作业 第十次大作业 写在前面 本博客用于记录(或者说是用来备 ...

  2. 【大学生课程】《Python数据分析》课程大作业要求

    <Python数据分析>课程大作业要求 大作业要求 评分标准 考核目标 数据分析基本步骤 实际操作 一.掌握Pandas的读写操作 读写数据操作: 读取文本文件 正确使用预处理技术过滤数据 ...

  3. 作业3(大作业):python数据分析与应用大作业,对用户用电量数据进行数据处理,包括数据转置、异常数据识别和处理、统计基本统计量(包括峰度、偏度)、按日/周(求和)差分、5%分位数等

    Python数据分析与应用大作业 使用学习过的知识(Numpy数值分析基础.Matplotlib数据可视化基础.Pandas统计分析基础),对data.csv用户用户用电量数据进行相关处理,其中数据中 ...

  4. Python实训day14pm【Python网络爬虫综合大作业-参考解析】

    Python实训-15天-博客汇总表 题目:天气数据的爬取和统计 大作业题目思路引导:定时爬取每个地级市的实时天气状况.存入excel中.为每个城市生成html展示.历史excel文件以每日为单位归档 ...

  5. Python实训day13am【Python网络爬虫综合大作业PPT】

    Python实训-15天-博客汇总表   今天上午大家抓紧时间继续完成实训报告和PPT,有问题我会在群里跟大家说明, 暂时不用上线直播了. 实训结束后,我会在博客上发布网络爬虫综合大作业题目及解析.

  6. python语言与系统设计 大作业——背单词的小软件

    (一)需求和规格说明 问题描述: 这是一款帮助学生背单词的小软件.建立单词库: 第一个功能是学生帮助学生记单词,会显示单词库中单词的拼写.音标.词性.中文翻译,学生可以选择中途退出,再次进入的时候,可 ...

  7. 合工大Python语言与系统设计大作业:微博评论文本情感分析

    大作业:爬取微博评论文本并且分析文本的情感极性:pos or neg 外挂图片失败,请自行发挥想象!!! 文章目录 大作业:爬取微博评论文本并且分析文本的情感极性:pos or neg 设计背景 系统 ...

  8. Python实训day14am【Python网络爬虫综合大作业-答辩】

    Python实训-15天-博客汇总表 实训总结: 由浅入深的了解了python语言应用: 编写了很多案例,完成了发作业,提升了编程思路和能力: 了解了行业现状,认识到企业对人才的要求,去除焦虑,对后续 ...

  9. Python选修课,期末大作业Pygame小游戏<Sharpshooter>

    本篇博文为博主大一Python选修课的期末作业,主要运用了Pygame叙写了一个实现小小功能的小游戏,可以随意拿去当作业上交.(程序在文底附录) 一.目标分析. 1.在屏幕下方中央生成一个炮台 2.随 ...

最新文章

  1. ThinkPHP5 (路径优化,路由)
  2. 机器学习面试:这25个实用又有深度的问题
  3. 为什么`[`比`子集更好?
  4. 如何在命令行模式下升级的你Visual Studio的Solution文件
  5. php中读取大文件实现方法详解
  6. 阿里巴巴java开发手册学习
  7. spring -mvc 将对象封装json返回时删除掉对象中的属性注解方式
  8. Java笔记(二十) 注解
  9. Ext 学习之 Store
  10. 在 Mac上手动清除应用程序/用户缓存教程
  11. Arm Compiler 5 在 Keil MDK 5.37中不可用
  12. VP9与H.265的6个不同点
  13. tan(x)的四阶麦克劳林级数
  14. React---关于useCallback和useMemo的详解
  15. Jboot 跨域请求
  16. java解析excel合并单元格,100%好评!
  17. shell判断给定日期是否是周末or月末
  18. 20162316刘诚昊 用链表实现队列
  19. 微信小程序获取页面元素高度_微信小程序之动态获取元素宽高
  20. 2019第一次软件培训 --- C语言

热门文章

  1. fatal: The remote end hung up unexpectedly解决办法
  2. 上传图片 可限制大小和文件类型
  3. SpringCloud禁用Eureka自我保护模式
  4. 《Windows核心编程》读书笔记四 进程
  5. 日常踩坑记录-汇总版
  6. PSRAM 伪静态随机存取内存
  7. 打2把王者荣耀的时间,学会JAVA自制验证码图片
  8. Springboot Actuator未授权访问漏洞复现
  9. 基金强力介入移动互联网板块
  10. 大脑的终极秘密——从狮子也有意识谈起