Python之类和对象【一】(1.0-函数和类的区别,类和对象,驼峰命名法,定义类的语法)

文章目录

  • 前言
  • 一、什么是类?
    • 1、函数和类的区别
    • 2、类和对象
    • 3、驼峰命名法
    • 4、定义类的语法
  • 总结

前言

记录 初次接触类和对象的含义,用现实生活中的例子讲解。

一、什么是类?

1、函数和类的区别:

函数:封装  把一个功能封装起来了。使用者只需要知道功能名字,和参数。

现实生活中的例子:

高铁票 - 取票、买票、打印报销凭证、改签
ATM机(一体化) - 取钱、存钱、转帐、查余额、打流水 -- 前提:卡一插,密码一输
商场(一站式) - 买衣服、买首饰、吃饭、看电影、打电子游戏、滑冰、唱歌、书店
这种单一的功能(取票,取钱,存钱)相当于就是函数。

更高级的封装:
    不再是针对单一功能,针对功能集合(包含很多功能)。

(也就是类,ATM机就一个类,这个机器包含了很多功能)。

2、类和对象:

类:  同一类事物的共同特征(属性+功能/行为/能力)描述。抽象的。
对象: 是类的某一个具像化。是具体的。


先有类,再有对象。对象是类衍生出来的,是类的具像化。
先定义类

举例生活中的例子:

工作 - 106份工作。具体1:城市薪资工作时间岗位名称
人类 - 吃喝拉撒睡(功能)   (属性特征)外貌特征 身高 体重 年龄 名字  是否单身  是否结婚  是否有娃 

编程里面:
1、别人写好的类 - 提供了一系列的功能(功能和属性的结合体)。 你作为使用者,你要去创造对象,去使用功能。
2、自己去写类,然后再去创造对象,再去使用。

3、驼峰命名法:

大驼峰:比如2个单词,首字母大写

每一个单词的首字母都采用大写字母,例如:FirstName、LastName、CamelCase,也被称为 Pascal 命名法。


小驼峰:2个单词,第一个单词全小写,第二个单词首字母大写

第一个单词以小写字母开始,第二个单词的首字母大写。例如:firstName、lastName。

4、定义类的语法:

class 类名(大驼峰命名):
    属性 - 变量
    功能 - 函数(function)实现的。 在类当中,叫方法(method)。
          __init__() --  初始化方法(方法名固定)

 插入一段代码可以试着用:

class MyAtm:

    # 面临的问题:每一个方法里面,都有对card,passwd的统一判断处理。
    # 代码重复了。那可不可以只写一个方法,就对card,passwd的统一判断处理
    # 如果不处理,函数放在类内部,和放在类外面,没有什么区别。

    # 取钱
    def get_money(self,card,passwd,left_money,to_be_geted_money):
        """
        取钱:卡号正确(10位),密码要正确(6位),有钱(>100)。atm也得有钱。
        :return:
        """
        if len(card) != 10 or len(passwd) != 6 or left_money < 100:
            print("您的卡号不是10位,或者密码不是6位,或者余额少于100")
            return
        print("可以取钱了...")
        if to_be_geted_money > left_money:
            print(f"您的余额不足,取不出{to_be_geted_money}")
            return
        print("取钱成功....")
        print(f"您的余额还剩:{left_money - to_be_geted_money}")

    # 存钱
    def save_money(self,card,passwd,saved_money):
        if len(card) != 10 or len(passwd) != 6:
            print("您的卡号不是10位,或者密码不是6位")
            return
        if saved_money % 100 != 0:
            print("请存100的整数倍金额!")
            return
        # 存钱上限是多少

    # 转帐
    def give_money_out(self,card,passwd,left_money,other_card,out_money):
        if len(card) != 10 or len(passwd) != 6 or left_money < 100:
            print("您的卡号不是10位,或者密码不是6位,或者余额少于100")
            return

    # 查询
    def see_money(self,card,passwd):
        if len(card) != 10 or len(passwd) != 6:
            print("您的卡号不是10位,或者密码不是6位")
            return

    # 打印帐单
    def print_payment(self,card,passwd):
        if len(card) != 10 or len(passwd) != 6:
            print("您的卡号不是10位,或者密码不是6位")
            return

总结

暂无

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值