Python入门之类的基础语法

本文通过一系列编程任务介绍了Python中类的声明与定义、属性与实例化、方法绑定与调用、静态方法和类方法的使用,以及类的导入。任务涉及创建Book、People、fractionSum和BookSell类,实现书籍销售、个人介绍、分数求和及方法调用等功能。同时,还展示了如何根据条件选择调用相应的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第1关:类的声明与定义

本关的编程任务是补全Book.py文件中的代码,具体要求如下:

  • 在类头部填入定义Book类的代码。
# 请在下面填入定义Book类的代码
########## Begin ##########
class Book(object):
########## End ##########
    '书籍类'
    def __init__(self,name,author,data,version):
        self.name = name
        self.author = author
        self.data = data
        self.version = version

    def sell(self,bookName,price):
        print("%s的销售价格为%d" %(bookName,price))

第2关:类的属性与实例化

本关的编程任务是补全People.py文件中的声明变量和实例化部分,具体要求如下:

  • 填入声明两个变量名分别为namecountry的字符串变量的代码;
  • 填入对类People进行实例化的代码,实例对象为p
class People:
    # 请在下面填入声明两个变量名分别为name和country的字符串变量的代码
    ########## Begin ##########
    name = ""
    country = ""
    ########## End ##########
    def introduce(self,name,country):
        self.name = name
        self.country = country
        print("%s来自%s" %(name,country))
name = input()
country = input()
# 请在下面填入对类People进行实例化的代码,对象为p
########## Begin ##########
p = People()
########## End ##########
p.introduce(name,country)

第3关:绑定与方法调用 

本关的测试文件给出了一个类fractionSum,此类的作用是当输入一个数n,如果n为偶数,求1/2+1/4+...+1/n的和,如果输入n为奇数,求1/1+1/3+...+1/n的和。
 

fractionSum中,定义了方法peven(self,n)用来求当n为偶数时的结果,定义了podd(self,n)用来求当n为奇数时的结果,定义了dcall(self,fp,n)方法来调用pevenpodd两个方法,fp为方法名,最后返回计算结果。
 

本关的编程任务是补全fractionSum.py文件中的创建实例与调用方法部分,具体要求如下:

  • 填入创建fractionSum的实例fs的代码;
  • 填入调用fractionSumtest类中dcall方法的代码,计算当n为偶数时计算的和;
  • 填入调用fractionSumtest类中dcall方法的代码,计算当n为奇数时计算的和。
import fractionSumtest
# 请在下面填入创建fractionSum的实例fs的代码
########## Begin ##########
fs = fractionSumtest.fractionSum()
########## End ##########
n = int(input())
if n % 2 == 0:
    # 请在下面填入调用fractionSumtest类中dcall方法的代码,计算当n为偶数时计算的和
    ########## Begin ##########
    sum = fs.dcall(fs.peven,n)
    ########## End ##########
else:
    # 请在下面填入调用fractionSumtest类中dcall方法的代码,计算当n为奇数时计算的和
    ########## Begin ##########
    sum = fs.dcall(fs.podd,n)
    ########## End ##########
print(sum)

第4关:静态方法与类方法 

本关的编程任务是补全BookSell.py文件中的函数修饰符部分,将函数声明为相应的类型,具体要求如下:

  • 填入函数修饰符将printStatic()方法声明为静态方法;
  • 填入函数修饰符将printVersion(cls)方法声明为类方法。
class BookSell:
    static_var = 100
    def sell(self,name,author,version,price):
        print("%s的销售价格为%d" %(name,int(price)))
    # 请在下面填入函数修饰符将printStatic()方法声明为静态方法
    ########## Begin ##########
    @staticmethod
    ########## End ##########
    def printStatic():
        print(BookSell.static_var)
    # 请在下面填入函数修饰符将printVersion(cls)方法声明为类方法
    ########## Begin ##########
    @classmethod
    ########## End ##########
    def printVersion(cls):
        print(cls)

第5关:类的导入 

本关的测试文件DataChangetest.py中定义了一个类DataChange,这个类实现了将八进制转换为十进制然后输出,这个功能由这个类中的eightToten(self,p)方法实现。
 

本关的编程任务是补全DataChange.py文件中的导入模块并调用方法实现数制转换功能,具体要求如下:

  • DataChangetest模块中导入DataChange类,并使用该类中的eightToten(self,p)方法,实现将输入的八进制转换成十进制输出。
# 从 DataChangetest 模块中导入 DataChange 类,并使用该类中的 eightToten(self,p) 方法,实现将输入的八进制转换成十进制输出。
########## Begin ##########
from DataChangetest import DataChange
dct = DataChange()
x = input()
m = dct.eightToten(x)
########## End ##########

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小浪浪、

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值