Python导入类说一说

news2024/10/5 21:19:07

要在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()









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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python网络基础爬虫-python基本语法

文章目录 逻辑语句if,else,elifforwhile异常处理 函数与类defpassclass 逻辑语句 熟悉C/C语言的人们可能很希望Python提供switch语句,但Python中并没有这个关键词,也没有这个语句结构。但是可以通过if-elif-elif-…这样的结构代替,或者使用字…

解决JVM进程被系统杀掉问题

背景 服务A在测试环境,隔几个小时接口就无法访问。登录机器查看,发现进程已经没了。大致猜想是进程使用的内存或CPU资源使用太多,导致被系统kill。 问题定位 使用dmesg命令查看进程被kill的详情。 > dmesg --time-format iso2024-03-0…

【Python如何与电脑玩石头剪刀布游戏】

1、石头剪刀布Python代码如下: import random while True:a random.randint(0, 2)b int(input("请输入一个数字(0石头, 1剪刀, 2布): "))c [石头, 剪刀, 布]if b ! 0 and b ! 1 and b ! 2:print("傻子,你出错了…

五子棋小游戏(sut实验报告)

实验目的 实现人与人或人与电脑进行五子棋对弈 实验内容 启动游戏,显示游戏参数设置界面,用户输入参数后进入游戏界面,显示棋盘及双方博弈过程,游戏过程中可选择退出游戏。判定一方获胜后结束本局游戏,可选择继续下…

S4 Hana SD -信贷管理 - 02

2.3 给信贷控制范围分配公司代码 TCODE: SPRO 配置路径:IMG > 企业结构 > 分配 > 财务会计 > 给信贷控制区分配公司代码 配置路径截图: 公司:被分配的公司代码。 公司名称&城市:已在公司代码数据中维护。 CCAR:分配的信贷控制范围。 覆盖CC范围:如…

InstantID Zero-shot Identity-Preserving Generation in Seconds

InstantID: Zero-shot Identity-Preserving Generation in Seconds TL; DR:InstantID IP-Adapter (Face) ControlNet,实现了具有较高保真度的人脸 ID 生成。 方法 InstantID 想做到的事情是:给定一张参考人脸 ID 图片,生成该…

专升本 C语言笔记-07 逗号运算符

1.逗号表达式的用法 就是用逗号隔开的多个表达式。逗号表达式,从左向右依次执行。 2.逗号表达式的特性 2.1.当没有括号时,第一个表达式为整个表达式的值。 代码 int x 3,y 5,a 0; a x,y; printf("a %d",a); 说明:因为逗号优先级最低,会…

利用Python进行网络爬虫:Beautiful Soup和Requests的应用【第131篇—Beautiful Soup】

利用Python进行网络爬虫:Beautiful Soup和Requests的应用 在网络数据变得日益丰富和重要的今天,网络爬虫成为了获取和分析数据的重要工具之一。Python作为一种强大而灵活的编程语言,在网络爬虫领域也拥有广泛的应用。本文将介绍如何使用Pyth…

【智能硬件、大模型、LLM 智能音箱】MBO:基于树莓派、ChatGPT 的桌面机器人

MAKER:David Packman/译:趣无尽(转载请注明出处) 这是国外 Maker David Packman 制作的基于树莓派机器人 MBO,该机器人的外观设计灵感来自动漫 Adventure Time 中的机器人 MBO。它具有强大的交互功能,可实现脱机唤醒词检测、调用 ChatGPT 3.5 进行聊天、机器视觉对图像进…

解决Git:Author identity unknown Please tell me who you are.

报错信息: 意思: 作者身份未知 ***请告诉我你是谁。 解决办法: git config --global user.name "你的名字"git config --global user.email "你的邮箱"

Android 15 首个开发者预览版到来

作者 / 工程副总裁 Dave Burke Android 15 的首个开发者预览版现已发布,以便各位开发者能与我们通力协作,打造更优秀的 Android 平台。 在 Android 15 中,我们继续致力于打造一个既能提升工作效率,又能提供全新功能的平台。这些新…

蓝桥杯-模拟-4402. 刷题统计

题目 思路 代码 a,b,nmap(int,input().split()) sa*5b*2 resn//s*7 # 存在周期 d[a,a,a,a,a,b,b] n%s i0 while n>0: # 对剩余数量进行枚举,如果等于0,相当于还会再进去加一天n-d[i]i1res1 print(res)

es 聚合操作(一)

前言 Elasticsearch除搜索以外,提供了针对ES 数据进行统计分析的功能。聚合(aggregations)可以让我们极其方便的实现对数据的统计、分析、运算。例如: 衣服品牌的受欢迎程度这些衣服的平均价格、最高价格、最低价格这些衣服的每天、每月销量如何 使用…

cpp qt 一个奇怪的bug

今天在用cpp qt的时候发现了一个奇怪的东西 这是我的源代码 #include "mywidget.h" #include <QPushButton>myWidget::myWidget(QWidget *parent): QWidget(parent) {QPushButton * btn1 new QPushButton;btn1->show();btn1->setParent(this);btn1-&g…

在集群模式下,Redis 的 key 是如何寻址的?分布式寻址都有哪些算法?了解一致性 hash 算法吗?

目录 一、分布式寻址算法 1. hash 算法 2. 一致性 hash 算法 3. Redis cluster 的 hash slot 算法 二、Redis cluster 的高可用与主备切换原理 1. 判断节点宕机 2. 从节点过滤 3. 从节点选举 4. 与哨兵比较 一、分布式寻址算法 hash 算法(大量缓存重建) 一致性 hash…

【代码随想录 | 链表 02】反转链表

文章目录 2.反转链表2.1题目2.2解法2.2.1双指针法2.2.2递归法 2.反转链表 2.1题目 206.反转链表——力扣链接 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例一&#xff1a; 输入&#xff1a;head [1,2,3,4,5] 输出&#xff1a;…

重建大师出现图中密集匹配失败的情况,是什么原因导致的?

可以检查瓦块是否位于测区边缘&#xff0c;边缘瓦块可以忽略&#xff1b;如果是中间区域的话&#xff0c;可能中间文件有异常&#xff0c;可以新建个reconstruction&#xff0c;然后单独提交失败的瓦块。 重建大师是一款专为超大规模实景三维数据生产而设计的集群并行处理软件&…

数据结构:7、队列

一、队列的概念与结构 队列&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作的特殊线性表&#xff0c;队列具有先进先出FIFO(First In First Out) 入队列&#xff1a;进行插入操作的一端称为队尾 出队列&#xff1a;进行删除操作的一端称为队头…

Cisco Packet Tracer模拟器实现路由器的路由配置及网络的安全配置

1. 内容 1. 配置路由器实现多个不同网络间的通信&#xff0c;路由器提供的路由协议包括静态路由协议、RIP动态路由、OSPF动态路由协议等等&#xff0c;训练内容包括路由器的静态路由配置、路由器的RIP动态路由配置、路由器的OSPF动态路由配置以及路由器的路由重分布配置。 2.…

Css基础——溢出文字省略号表达

1. 单行文本溢出显示省略号&#xff1a; 1.1、方法&#xff1a; 1. 先强制一行内显示文本*/ white-space: nowrap; &#xff08; 默认 normal 自动换行&#xff09; 2. 超出的部分隐藏*/ overflow: hidden; 3. 文字用省略号替代超出的部分*/ text-overflow: ellipsis; 1.2、代…