首页 > 编程语言 >Python面向对象1详解案例

Python面向对象1详解案例

时间:2024-11-08 22:51:26浏览次数:3  
标签:salary 输出 name Python self 面向对象 详解 age 输入

1.面向对象(先前pygame的小游戏后续1中有介绍)

类名:大驼峰命名方式(每个单词的首写字母都有要大写)

属性:就是变量

行为:函数

class 类名:

      类代码(属性,行为)

运行代码类代码直接会执行

对象:类产生对象(类()来实现)

# 对象使用类里面的方法

对象.方法名()

# 对象使用类里面的类属性

print(对象.属性)

2.函数求差

# 描述
# 请定义一个函数cal(),该函数返回两个参数相减的差。
# 输入第一个数字记录在变量x中,输入第二个数字记录在变量y中,将其转换成数字后调用函数计算cal(x, y),再交换位置计算cal(y, x)。
# 输入描述:
# 输入两个整数。
# 输出描述:
# 根据题目描述输出两个差,每个数字单独一行。
# 示例1
# 输入:
# 3
# 5
# 输出:
# -2
# 2
x = int(input('输入第一个数字'))
y = int(input('输入第二个数字'))
class Cal():

    def __init__(self,x,y):
        self.x=x
        self.y=y
    def jian(self):
        return self.x-self.y
a=Cal(x,y)
b=Cal(y,x)
print(a.jian())
print(b.jian())

3.球的表面积

# 描述
# 球的表面积公式为
# V
# =
# 4
# π
# r
# 2
# V=4πr
# 2
#  ,请写一个函数,输入球的半径,返回球的表面积。球的半径如下:[1, 2, 4, 9, 10, 13],请输出这些半径下的表面积,π取math库的math.pi。
# 输入描述:
# 无
# 输出描述:
# 每行输出一个表面积,保留两位小数。
import math


def func():
    for r in [1, 2, 4, 9, 10, 13]:
        print('%0.2f' % (4 * math.pi * r ** 2))


func()

 4.班级管理

描述

牛牛的Python老师为了更好地管理班级,利用一个类Student来管理学生,这个类包含了学生姓名(str)、学号(str)、分数(int)、每次作业等级(list[str])等信息。请你帮助牛牛的老师实现这样一个类,并定义构造方法实现初始化,定义打印函数实现打印学生的姓名、学号、分数、提交作业的次数、每次作业的等级。

输入描述:

第一行输入字符串表示学生姓名。

第二行输入字符串表示学生学号。

第三行输入整数表示学生得分。

第四行输入多个大写字母表示每次作业等级,用空格间隔。

输出描述:

用一句话输出学生的姓名、学号、分数、提交作业的次数、每次作业的等级

class Student():
    def __init__(self,name,ID,score,grade):
        self.name=name
        self.ID=ID
        self.score=score
        self.grade=grade
    def func(self):
        print(f'{self.name}的ID是{self.ID},分数是{self.score} ,等级是{self.grade}')
a=Student('NiuNiu',12345,90,'A')
a.func()


 5.修改属性

# 描述
# 请为牛客网的员工创建一个Employee类,包括属性有姓名(name)、(salary),并设置初始化。同时该类包括一个方法printclass,
# 用于输出类似"NiuNiu'salary is 4000, and his age is 22"的语句。
# 请根据输入的name与salary为该类创建实例e,并调用printclass方法输出信息,如果没有年龄信息则输出错误信息"Error! No age"。
# 根据输入的年龄为实例e直接添加属性age等于输入值,再次调用printclass方法输出信息。(printclass方法中建议使用try...except...结构)
# 输入描述:
# 三行分别输入姓名name、工资salary、年龄age,其中第一个为字符串,后两个为整型数字。
# 输出描述:
# 根据描述输出错误信息或是打印信息。
# 示例1
# 输入:
# NiuNiu
# 8000
# 22
# 输出:
# Error! No age
# NiuNiu'salary is 8000, and his age is 22
class Employee:
    def __init__(self, name, salary):
        self.name = name
        self.salary = salary

    def printclass(self):
        try:
            print(f"{self.name}'s salary is {self.salary}, and his age is {self.age}")
        except AttributeError:
            print("Error! No age")


name = input()
salary = int(input())
age = int(input())

e = Employee(name, salary)
e.printclass()

if age:
    e.age = age
    e.printclass()

标签:salary,输出,name,Python,self,面向对象,详解,age,输入
From: https://blog.csdn.net/2301_76617986/article/details/143635722

相关文章

  • python 模拟登录问题
    `#模拟古诗文网的登录importrequestsfromdatetimeimportdatetimefromlxmlimportetreeimportbase64importtimelogin_url='https://so.gushiwen.cn/user/login.aspx?from=http://so.gushiwen.cn/user/collect.aspx'requestLoginUrl=r"https://so.gus......
  • python+flask计算机毕业设计高校校园线上跳蚤市场的系统设计(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容高校校园线上跳蚤市场的系统设计-内容说明一、选题背景随着互联网技术的发展,线上交易模式日益普及。关于跳蚤市场的研究,现有研究主要以线下跳蚤......
  • 编程之路,从0开始:操作符详解
    Hello大家好!我们又见面啦!给生活添点passion,开启今天的编程之路!目录1、算术操作符2、移位操作符3、位操作符(1)按位与(2)按位或(3)按位异或(4)按位取反4、单目操作符(1)!操作符(2)szieof(3)(类型)5、逗号表达式7、关系操作符8、逻辑操作符9、?:操作符10、下标访问[],函数调用()11......
  • 看一遍就会用——面向对象:类和对象,实例属性,实例方法,字符串表示
    python面向对象1.类和对象2.实例属性3.实例方法4.字符串表示1.__str__方法2.__repr__方法1.类和对象在Python中,类和对象是面向对象编程(OOP)的核心概念。类(Class)是创建对象的蓝图或模板,它定义了对象将拥有的属性和方法。对象(Object)则是根据类创建的具体实例,它包含了类......
  • 20241107全国计算机二级Python优秀过级(大头博士计算二级)
    2024年11月7日今天全国计算机二级可以查分了,并下载证书了全国计算机等级考试(NCRE)成绩查询-中国教育考试网查看证书下载证书拿了一张200g的白色卡纸正反打印正反打印,机器有点走墨,晕开了,算了,反正有电子证,打印一张是留着备用的这张证书不能抵扣个人所得税,所以......
  • 详解:字符串常量池
            字符串常量池是Java运行时环境(JRE)的一部分,它用于存储字符串字面量。字符串字面量是源代码中直接用双引号括起来的字符串,例如"hello"。在Java中,字符串是不可变的,这意味着一旦创建了一个字符串对象,它的值就不能改变。        当Java编译器遇到字符串字......
  • # python # 可视化窗口 # 可应用与爬虫 # tkinter
    具有功能:创建窗口,监听窗口(可自定义打印图片-选项-按键)所需工具:pycham所需库:tkinter代码讲解:1.导入库-创建窗口-设置窗口大小-设置标题importtkinterastk#创建一个窗口root=tk.Tk()#设置窗口大小root.geometry("800x400+400+200")#注意这里使用的是英文字......
  • Oracle OCP认证考试考点详解082系列15
    题记:本系列主要讲解OracleOCP认证考试考点(题目),适用于19C/21C,跟着学OCP考试必过。71.第71题:题目解析及答案:对于数据库,使用数据库配置助手(DBCA)可以执行以下哪两项任务?A.为新数据库配置非标准块大小。数据库配置助手(DBCA)可用于为新创建的数据库配置非标准块大小。在......
  • 深度学习:循环神经网络(RNN)详解
    循环神经网络(RNN)详解**循环神经网络(RecurrentNeuralNetwork,RNN)**是一类能够处理序列数据的神经网络,其设计使得网络可以在每个时间步上保留先前时间步的信息。RNN通过在时间步之间共享参数,能够建模输入序列中元素的时序依赖关系。由于其递归结构,RNN在自然语言处理、语音......
  • 学习日志007--python函数 学完再练习练
    一、函数的概念1.定义函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。2.作用函数能提高应用的模块性,和代码的重复利用率3.定义函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用......