python复习题

大题

可会能在原题上做修改,理解为主!!

第一题 大概率

  • 50以内 (也可能是100以内,1000以内) 的奇数/偶数

方法一

sum = 0
for i in range(51):  #这里51是50以内   同理100/1000以内
    if i%2 == 1: #这里1是奇数   也可能是2 偶数
        sum+=i
print(sum)

方法二

sum=0
#这里1,51,2    从1开始 到50 步长2 表示50以内奇数
#同理 2,51,2 表示50以内偶数和
for i in range(1,51,2): 
    sum+=i
print(sum)

第二题 大概率

  • 使用函数设计一个程序为参加歌手大赛的选手计算最终得分。评委给出的分数是0~10分。选手最后的得分为:去掉一个最高分,去掉一个最低分,计算其余评委的打分的平均值。
scores=[]
count = int(input("请输入评委人数(最少3位): "))
print(f"请输入{count}位评委对选手的打分(0~10): ")
for i in range(count):
    score=int(input(f"第{i+1}位评委打分:"))
    scores.append(score)
avg=(sum(scores)-max(scores)-min(scores))/(count-2)
print(f"最终得分:{avg}")

第三题 大概率

  • 设计3个字典dict_a、dict_b、dict_c,每个字典存储一个学生的信息,包括name和id,然后把这3个字典存储到一个列表student中,遍历这个列表,将其中每个人的所有信息都打印出来
dict_a={ "name":"张三" ,"id":1}
dict_b={ "name":"李四" ,"id":2}
dict_c={ "name":"王五" ,"id":3}
student=[]
student.append(dict_a)
student.append(dict_b)
student.append(dict_c)
for i in student:
    print(f"姓名: {i['name']}, id: {i['id']}")

第四题

  • 定义一个函数,求两个列表中重复的元素
def same(L1,L2):
    L3=[]
    L1=set(L1)
    for i in L1:
        for j in L2:
            if i==j:
                L3.append(i)
                break
    return L3
L=same([3,4,5,6,7],[5,6,7,8,9]) #自己举例子的列表
print(L)

第五题

  • 将字典转换成字符串的形式 {“a”:”b”,”c”:”d”}→”a&b||c&d”
a={'a':'b','c':'d'}
list =[]
list1=[]
for key,value in a.items():
    list.append(key)
    list.append(value)
    list1.append('&'.join(list))
    list=[]
print('||'.join(list1))

第六题 大概率

  • 斐波那契数列 (根据题目要求输出前几项)
def f(n):
    a,b = 0,1
    for i in range(n):
        a,b = b,a+b
        print(a,end=' ')
f(10) #根据题目要求输出前n项

第七题

两种题目说法,自己辨识一下

区别在于是否调用方法输出

第一种

  • 定义一个类,类中包括两个属性,一个公有属性a,一个私有属性b,创建一个对象(c,d),给a,b赋值,输出私有属性b
  • user用户类(A),共有属性name(a),私有属性id(b),创建用户对象,打印其id
class A:
    def __init__(self,a,b):
        self.a=a
        self.__b=b
num=A(10,20) #随便举例的
print(num._A__b)

第二种

  • 定义一个类A,包含a属性(公有属性),b属性(私有属性),创建对象传递参数,调用方法
class A:
    def __init__(self,a,b):
        self.a = a
        self.__b = b
    def get_id(self):
        print(self.__b)
c = A(10,20) #随便举例的
c.get_id()

第八题

  • 定义一个类,类中包括两个公有属性a,b,方法c=a/b也可能是加法(add),创建对象(d,e)并传递参数,调用c输出
class B:
    def __init__(self,a,b):
        self.a=a
        self.b=b
    def c(self): #也可能是加法(add)
       print(self.a/self.b) #也可能是加法
p=B(100,20) #随便举例的
p.c()

第九题

  • 定义一个类A,类中包括两个私有属性a,b,公有方法c=a/b也可能是乘法,创建对象(d,e)并传递参数,调用c输出
class A:
    def __init__(self, a, b):
        self.__a = a
        self.__b = b
    def c(self):
        print(self.__a / self.__b) #也可能是乘法
p = A(10, 20) #随便举例的
p.c()

第十题

  • 定义一个类B继承第九题A类,包含公有属性f,重写c方法,创建对象传递参数,调用c方法
class A:
    def __init__(self, a, b):
        self.__a = a
        self.__b = b
    def c(self):
        print(self.__a / self.__b)

class B(A):
    def __init__(self,f):
        self.f = f
    def c(self):
        print(self.f)

e = B(10)  #随便举例的
e.c()

第十一题

  • 定义一个矩形类,两个私有属性height,weidth,一个公有方法getArea(),实例化一个对象
class Rectangle:
    def __init__(self,height,weidth):
        self.__height = height
        self.__weidth = weidth
    def getArea(self):
        print(self.__height*self.__weidth)
r = Rectangle(3,4)
r.getArea()

第十二题

定义正方形类,有一个属性边长,体现继承于十一题矩形类,体现公有属性

class Rectangle:
    def __init__(self,height,weidth):
        self.__height = height
        self.__weidth = weidth
    def getArea(self):
        print(self.__height*self.__weidth)

class Square(Rectangle):
    def __init__(self,bc):
        self.bc = bc
    def getArea(self):
        print(self.bc**2)

s = Square(6)
s.getArea()

第十三题 大概率

  • 用函数实现阶乘
def jc(n):
	if n==0:
		return 1
	else:
		return n*jc(n-1)
print(jc(4))
  • 13
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
对于Python复习题库,你可以考虑以下几种方法来创建和使用: 1. 使用列表:你可以创建一个包含多个问题和答案的列表,每个问题和答案可以作为一个元组存储在列表中。例如: ```python questions = [("What is Python?", "Python is a high-level programming language."), ("What is a variable?", "A variable is a named location in memory used to store data."), ("How do you define a function in Python?", "You can define a function using the 'def' keyword.")] ``` 然后,你可以使用循环遍历列表并逐个显示问题和答案。 2. 使用字典:你可以创建一个包含问题和答案的字典,其中问题作为键,答案作为值。例如: ```python questions = {"What is Python?": "Python is a high-level programming language.", "What is a variable?": "A variable is a named location in memory used to store data.", "How do you define a function in Python?": "You can define a function using the 'def' keyword."} ``` 然后,你可以使用循环遍历字典并逐个显示问题和答案。 3. 使用类和对象:你可以创建一个Question类,每个Question对象包含一个问题和一个答案。例如: ```python class Question: def __init__(self, question, answer): self.question = question self.answer = answer questions = [Question("What is Python?", "Python is a high-level programming language."), Question("What is a variable?", "A variable is a named location in memory used to store data."), Question("How do you define a function in Python?", "You can define a function using the 'def' keyword.")] ``` 然后,你可以使用循环遍历Question对象列表并逐个显示问题和答案。 这些方法都可以根据你的需求来选择。你可以根据自己的喜好和项目要求来决定使用哪种方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值