Python导入类说一说

要在Python中导入一个类,需要使用import关键字。

详细去看下面的代码

1、多例类

class Restaurant:
    '''
    餐馆类
    '''
    def __init__(self,restaurant_name,cuisine_type):
        #类的属性
        self.restaurant_name = restaurant_name
        self.cuisine_type = cuisine_type
        # self.stregth_level = 0
    def describe_restaurant(self):
        '''描述餐厅'''
        print(f'餐厅名字是{self.restaurant_name};菜品是{self.cuisine_type}')
    def open_reataurant(self):
        '''开餐厅'''
        print(f'{self.restaurant_name}餐厅正在营业')

    '''静态方法'''
    @staticmethod
    def restaurant(a,b):
        print(a+b)

    '''类方法'''
    @classmethod
    def myrestaurant(cls):
        Restaurant.restaurant(20,40)  #类对象调用静态方法
    def mynerestaurant(self):
        self.restaurant(50,60)   #类实例对象调用静态方法

class Car:
    '''
    用户类
    '''
    def __init__(self,make,model,year):
        #类的属性
        self.make= make
        self.model = model
        self.year=year
        self.odometer_reading=0

    def get_descriptive_name(self):
        print(f'{self.year} {self.make} {self.model}')
    def read_odometer(self):
        print(f'This car has{self.odometer_reading} miles on it')
    def update_odometer(self,mileage):
        if mileage>=self.odometer_reading:
            self.odometer_reading=mileage
        else:
            print(f'你不能退后')
    def increment_odometer(self,miles):
        self.odometer_reading+=miles
    def fillgasoil(self):
        print('{self.make}加20L油')

2、单类

class User:
    '''
    用户类
    '''
    def __init__(self,first_name,last_name):
        #类的属性
        self.first_name = first_name
        self.last_name = last_name
        self.login_attemps=0
        # self.stregth_level = 0

    def printuserinfo(self):
        print(f'顾客全名{self.first_name}+{self.last_name}')
    def greetuserhello(self):
        print(f'顾客{self.first_name}+{self.last_name}您好')
    def increment_login_attemps(self):
        self.login_attemps += 1
    def reset_login_attemps(self):
        self.login_attemps=0

    '''静态方法'''

    @staticmethod
    def descricbe_uesr(a,b):
        print(a+b)

    '''类方法'''

    @classmethod
    def print_uesr(cls):
       User.printuserinfo()

3、类的调用干事情

from ClassUser import User
'''导入单个类'''

myUser=User('王',"好汉")

myUser.printuserinfo()
from 创建和使用类.ClassOne import Car
'''从同一级导入类'''

mycar=Car('changan','cs45',15)
mycar.update_odometer(300)
from 创建和使用类.ClassOne import Restaurant,Car
'''从一个模块导入多个类'''

myprivate=Restaurant('Chinesefood','france')
myprivate.open_reataurant()

mypcar=Car('audi','r8',2)
mypcar.read_odometer()
from 创建和使用类.ClassOne import*
'''导入所有类'''
myprivate1=Restaurant('Chinesefood','france')
myprivate1.open_reataurant()

mypcar1=Car('audi','r8',2)
mypcar1.read_odometer()
from 创建和使用类.ClassOne import Restaurant as CR
from 创建和使用类.ClassOne import Car as CC
'''使用别名'''

myprivate=CR('Chinesefood','france')
myprivate.mynerestaurant()

mycarx=CC('audi','r8',2)
mycarx.read_odometer()









本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/455269.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何利用ChatGPT联系英语口语和听写!分享一些Prompt!

参考文章 ChatGPT4升级方法 namecheap购买方法 sora namecheap 支付 首先先看ChatGPT修改英语作文的能力 足以证明ChatGPT的能力 ChatGPT英语练习 口语: 实时交谈纠错发音纠错语句 写作: 写作建议构思文本 模拟考试: 雅思、托福和…

论文阅读——Vision Transformer with Deformable Attention

Vision Transformer with Deformable Attention 多头自注意力公式化为: 第l层transformer模块公式化为: 在Transformer模型中简单地实现DCN是一个non-trivial的问题。在DCN中,特征图上的每个元素都单独学习其偏移,其中HWC特征图上…

BUGKU-WEB never_give_up

题目描述 题目截图如下: 进入场景看看: 解题思路 F12查看请求和响应,查找线索 相关工具 base64解码URL解码Burp Suit抓包 解题步骤 F12查看请求和响应,发现一行注释包含一个文件名称【1p.html】,这应该就是提…

操作系统内功篇:使用说明

本专栏是我阅览大佬小林coding写的电子书《图解系统》的一些总结并参杂一些我个人学习的补充,博客大纲是用的大佬的纲要。 暂时打算更新这么多,在以后的学习的过程中再慢慢更新......... 此文章会实时更新更新进程...........

什么是Ipython

IPython(Interactive Python)是一个增强版的Python交互式解释器。它在标准Python解释器的基础上添加了许多有用的功能,旨在提高你编程时的效率和体验。IPython的核心特性包括但不限于以下几点: 增强的交互性:IPython提…

18. 查看帖子详情

文章目录 一、建立路由二、开发GetPostDetailHandler三、编写logic四、编写dao层五、编译测试运行 一、建立路由 router/route.go v1.GET("/post/:id", controller.GetPostDetailHandler)二、开发GetPostDetailHandler controller/post.go func GetPostDetailHand…

linux命令深入研究——cat

cat命令,“猫”,可以理解为瞄一眼文件内容,其中可以用重定向符号对文件进行一些修改,如增加,删除文件内容,其命令参数如-n,-s,-b可以输出带有行号的行 如果想要快速删除文件内容&…

Java学习笔记(11)

面向对象进阶 Static 静态变量 所有对象一起共享,就用static修饰 不属于对象,属于类的 可以用 类名.静态变量 “”;赋值 但是 对象.静态变量也可以访问到内容 Static内存图 Student这个类的字节码文件加载到方法区,并在内…

Nacos启动的第一个坑 Request nacos server failed:

前言: 今天,小编启动nacos写微服务的demo,电脑上安装了nacos服务器,管理后台也能正常登录。然后搭建了一个基于springboot的微服务项目,加了依赖、启动类加了注解、配置文件也进行了配置,然后启动项目,启动…

中国城市统计年鉴、中国县域统计年鉴、中国财政统计年鉴、中国税务统计年鉴、中国科技统计年鉴、中国卫生统计年鉴​

统计年鉴是指以统计图表和分析说明为主,通过高度密集的统计数据来全面、系统、连续地记录年度经济、社会等各方面发展情况的大型工具书来获取统计数据资料。 统计年鉴是进行各项经济、社会研究的必要前提。而借助于统计年鉴,则是研究者常用的途径。目前国…

wordpress主题批量修改历史文章标题,文章内容

:​wordpress模板,在我映像中还是比较受欢迎的,至少它该有的插件都是应有尽有,不像帝国cms虽然功能多,但是基本用不上,而且很多会出错。也不像织梦cms漏洞太多,搞的建站期间出现很多其他事情&am…

Linux字符设备驱动开发一

linux字符设备驱动 0 驱动介绍1 字符设备驱动1.1 字符设备相关概念和结构体1.2 实现简单的字符设备模块1.3 创建字符设备1.4 总结 应用程序调用文件系统的API(open、close、read、write) -> 文件系统根据访问的设备类型,调用对应设备的驱动API -> 驱动对硬件进…

『scrapy爬虫』03. 爬取多个页面(详细注释步骤)

目录 1. 分析网页试着拿到多个页面的url2. 抓取250个电影3. start_requests的使用4. 代码规范导库的优化关于重写最终修改后的代码 总结 欢迎关注 『scrapy爬虫』 专栏,持续更新中 欢迎关注 『scrapy爬虫』 专栏,持续更新中 1. 分析网页试着拿到多个页面…

yum安装mysql 数据库tab自动补全

centos7上面没有mysql,它的数据库名字叫做mariadb [rootlocalhost ~]#yum install mariadb-server -y [rootlocalhost ~]#systemctl start mariadb.service [rootlocalhost ~]#systemctl stop firewalld [rootlocalhost ~]#setenforce 0 [rootlocalhost ~]#ss -na…

数字人基础 | 3D手部参数化模型2017-2023

楔子: 2017年年底的泰国曼谷, SIGGRAPH Asia会议上, 来自马普所的 Javier Romero, Dimitrios Tzionas(两人都是 Michael J. Black的学生)发布了事实性的手部参数化模型标准: MANO [1]。 MANO的诞生意味着 Michael J. Black团队在继人体参数化模型 SMPL后, 事实性的将能够表达人…

信息系统项目管理师--沟通管理

IT 项⽬成功有关的最重要的四个因素是:主管层的⽀持、⽤户参与、有经验的项⽬经理和清晰的业务⽬标 项⽬沟通管理是确保及时、正确地产⽣、收集、分发、存储和最终处理项⽬信息所需的过程 项⽬沟通管理由两部分组成:⼀是制定策略,确保沟通对…

GUI编程--PyQt5--QTabWidget

文章目录 组件使用信号样式设置 组件使用 QTabWidget 页签 信号 self._ui Ui_Sub() self._ui.setupUi(right) # 切换tab页 self._ui.tabWidget.currentChanged.connect(self.tab_slot)def tab_slot(self):cur_index self._ui.tabWidget.currentIndex()tab_name self._ui…

微信小程序小案例实战

.wxml: <view class "title">狂飙经典语录 </view> <view class"out"><block wx:if"{{listArr.length}}"> <!-- bloock不会影响排版--><view class"list"><view class"row" wx:…

unicloud delete 删除

delete 删除 unicloud 删除大概分为两种 一种是 通过指定文档ID删除 语法如下 collection.doc(_id).remove()还有一种是条件查找文档然后直接批量删除 语法如下 collection.where().remove()反正总归是先查找到指定数据,然后使用remove()函数删除 示例如下 collection.doc(…

软考高级:需求变更管理过程概念和例题

作者&#xff1a;明明如月学长&#xff0c; CSDN 博客专家&#xff0c;大厂高级 Java 工程师&#xff0c;《性能优化方法论》作者、《解锁大厂思维&#xff1a;剖析《阿里巴巴Java开发手册》》、《再学经典&#xff1a;《Effective Java》独家解析》专栏作者。 热门文章推荐&am…