面向对象练习

本文提供了一系列的Python编程练习题,包括基础题和进阶题。基础题涵盖数学问题、数字和字符串操作、排序、财务计算、字符打印等;进阶题涉及更复杂的算法和应用。通过这些练习,读者可以加深对Python编程的理解和运用。
摘要由CSDN通过智能技术生成

基础题

1、(数学方面:五角数)一个五角数被定义为n(3n-1)/2,其中n=1、2、…所以,开始的几个数是1、5、12、22、…编写一个带下面函数头的函数返回五角数
def getPentagonalNumber(n):
编写一个程序来使用这个函数显示前100个五角数,每行显示10个

def getPentagonalNumber(n):
    if n % 10 == 0:
        print()

def Start():
    for n in range(1,101):
        a = n * (3 * n - 1) / 2
        print("%d"%a,end = "\t")
        getPentagonalNumber(n)
Start()
1       5       12      22      35      51      70      92      117     145
176     210     247     287     330     376     425     477     532     590
651     715     782     852     925     1001    1080    1162    1247    1335
1426    1520    1617    1717    1820    1926    2035    2147    2262    2380
2501    2625    2752    2882    3015    3151    3290    3432    3577    3725
3876    4030    4187    4347    4510    4676    4845    5017    5192    5370
5551    5735    5922    6112    6305    6501    6700    6902    7107    7315
7526    7740    7957    8177    8400    8626    8855    9087    9322    9560
9801    10045   10292   10542   10795   11051   11310   11572   11837   12105
12376   12650   12927   13207   13490   13776   14065   14357   14652   14950

2、(求一个整数各个数字的和)使用函数头:def sumDigits(n)

def sumDigits(n):
    sum = 0
    m = str(n)
    for i in range(len(m)):
        num = n//10**i%10
        sum += num 
    print(sum)
def start():
    n = int(input("输入一个整数:"))
    sumDigits(n)
start()
输入一个整数:12345
15

3、对三个数排序 def displaySortedNumbers(num1,num2,num3)

def displaySortedNumbers(num1,num2,num3):
    c = [num1,num2,num3]
    c.sort()
    print(c)

def Start():
    num1,num2,num3 = map(int,input('请输入三个数(,分隔)').split(','))
    displaySortedNumbers(num1,num2,num3)
Start()
请输入三个数(,分隔)22,11,35
[11, 22, 35]

4、(财务应用:计算未来投资值)编写一个函数计算指定年数以给定的利率来
计算未来投资值。
def dutureInvestmentValue(investmentAmount.monthlyInterestRate,years):

def dutureInvestmentValue(investmentAmount,monthlyInterestRate,years):
    for i in range(1,years+1):
        j = investmentAmount * monthlyInterestRate*0.01
        investmentAmount += j
        print(i,end = "\t")
        print("%.2f"%investmentAmount)

def Start():
    investmentAmount = int(input("请输入投资金额:"))
    monthlyInterestRate = int(input("请输入年利率(百分比格式):"))
    print("Years  Future Value")
    years = 30
    dutureInvestmentValue(investmentAmount,monthlyInterestRate,years)
Start() 
Years  Future Value
1       1090.00
2       1188.10
3       1295.03
4       1411.58
5       
好的,下面是一些 Python 面向对象练习题: 1. 创建一个名为 `Person` 的类,该类具有以下属性: * `name`:字符串,表示人的姓名。 * `age`:整,表示人的年龄。 * `gender`:字符串,表示人的性别。 该类还应具有一个名为 `speak` 的方法,该方法将打印一个字符串,表示该人正在说话。 2. 创建一个名为 `Rectangle` 的类,该类具有以下属性: * `width`:浮点,表示矩形的宽度。 * `height`:浮点,表示矩形的高度。 该类还应具有以下方法: * `area`:返回矩形的面积。 * `perimeter`:返回矩形的周长。 3. 创建一个名为 `BankAccount` 的类,该类具有以下属性: * `balance`:浮点,表示银行账户的余额。 该类还应具有以下方法: * `deposit`:向银行账户中存入指定金额。 * `withdraw`:从银行账户中取出指定金额。 4. 创建一个名为 `Animal` 的类,该类具有以下属性: * `name`:字符串,表示动物的名称。 * `species`:字符串,表示动物的物种。 该类还应具有一个名为 `make_sound` 的方法,该方法将打印一个字符串,表示该动物正在发出声音。 5. 创建一个名为 `Car` 的类,该类具有以下属性: * `make`:字符串,表示汽车品牌。 * `model`:字符串,表示汽车型号。 * `year`:整,表示汽车的生产年份。 该类还应具有以下方法: * `get_make`:返回汽车品牌。 * `get_model`:返回汽车型号。 * `get_year`:返回汽车的生产年份。 以上是一些 Python 面向对象练习题,希望能帮助你提高 Python 面向对象编程的能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值