python中的类与模块

类与对象

类表示着一类事物,对象表示某一个具体的实例。

类的定义

 # 定义一个类Phone
class Phone():
    # 类的属性
    brand = "小米"
    color = "white"
    # 类的方法
    def makeCall(self):
        print("拨打电话")
    def sendMsg(self):
        print("发送信息")

关键字class是用来定义类,它是定义类的固定形式。
类名:为类定义的名称。为了区分类与函数,类名称首字母建议大写
类的属性:表示这个类具有的属性。属性就是类中的变量的别称。
类的方法:表示这个类的一些功能。方法就是类中的函数的别称。
self参数:一个由程序自动转入的特殊参数。self参数代表的就是实例化生成的对象。即对象会将自己传递给self参数。

实例化对象

 # 定义一个类Phone
class Phone():
    # 类的属性
    brand = "小米"
    color = "white"
    # 类的方法
    def makeCall(self):
        print("拨打电话")
    def sendMsg(self):
        print("发送信息")
 # 实例化名为myPhone的对象
myPhone = Phone()
 # 输出myPhone对象
print(myPhone)

对象名:一个变量名,给对象设定的名称。例如,myPhone是通过类Phone创建的具体的对象。

属性和方法的调用

 # 定义一个类Phone
class Phone():
    # 类的属性
    brand = "小米"
    color = "white"
    # 类的方法
    def makeCall(self):
        print("拨打电话")
    def sendMsg(self):
        print("发送信息")
 # 实例化名为myPhone的对象
myPhone = Phone()
 # 输出myPhone的brand属性
print(myPhone.brand)    # 输出:小米
 # 调用myPhone的makeCall方法
myPhone.makeCall()      输出:拨打电话

属性的调用对象.属性名(不能直接输出,应使用print)
方法的调用对象.方法名()(可以直接输出)

class Phone():
    brand = "小米"
    def makeCall(self,n):
        print(f"我的{self.brand}手机余额为{n}元")
myPHone = Phone()
myPhone.makeCall(320)   # 输出:我的小米手机余额为320元

对象myPHone将自己传递给self,实参320传递给形参n
函数与方法的区别:函数一般直接使用,例如print()函数,range()函数,len()函数
方法使用句点表示法,紧跟在某一个对象后面使用。例如.append,.insert方法

模块

模块是已经写好的Python文件,以.py结尾。
模块可以包含函数、类和一些代码,它们之间的功能是相互关联的。
模块,类,函数的关系
Python中的模块,大致分为内置模块第三方模块自定义模块三种。
特点:内置模块,是Python自带,通用性好。
第三方模块,个人组织开发,个性化高

导入模块

无论是什么模块,都需要先导入再使用。
导入模块有两种方法:importfrom...import

import
  # 导入模块
 import datetime
  # 使用模块datetime中的类datetime的now方法获取当前日期时间,赋值给nowTime
 nowTime = datetime.datetime.mow()
 print(nowTime)

语法格式:因为类属于模块,方法属于类,所以,调用模块中的类的方法时,需要从大到小层层调用。
采用句点表示法的格式:模块名.类名.方法名
实例中,使用了,datetime模块datetime类now()方法
当我们获取了当前时间还能通过各种属性,来获取对应的年月日时分秒。对应的英文为:year,month,day,hour,minute,second

import datetime
nowTime = datetime.datetime.now()
nowYear = nowTime.year
nowMonth = nowTime.month
print(f"现在是{nowYear}年")
print(f"现在是{nowMonth}月")
  # 输出:现在是2022年
             # 现在是8月
from…import
# 从模块datetime中,导入类datetime
from datetime import datetime
# 使用类datetime的now 方法获取当前日期时间,赋值给nowTime
nowTime = datetime.now()
print(nowTime)

也就是说,使用import导入模块,是导入整个模块,在调用时需要模块前缀。
而使用from…import导入模块时,是导入模块的类或函数,在调用时可以直接使用函数或类的方法。

随机模块

 # 导入模块 random
 import random
  # 使用模块random中的uniform函数生成随机数
  randomNum = random.uniform(0,1)
  print(randomNum)
  # 输出:0.17526688869562(答案不唯一)

uniform函数用于产生指定范围随机浮点数。

random模块内不仅有生成随机浮点数的函数,还有生成随机整数,实现随机抽取等一系列函数。
例如
uniform(m,n) 产生m到n的随机浮点数
randint(x,y) 产生x到y的随机整数
choice(序列) 从序列中随机选取一个元素

  • 24
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值