类与对象、模块

类:多个类似事物组成的群体的统称
 用type()验证

print(type('1'))
>> <class 'str'>

类与实例---->群体和个体
类分类:属性、方法

  • 创建class
    在这里插入图片描述
    实例方法:def +方法名(self):
    类名大写
  • 调用(接创建)
my_computer=Computer()#类的实例化,类下创建一个实例对象,可以调用所属类的所有属性方法
print(my_computer.screen)
my_computer.start()

创建:class
属性创建:赋值语句
实例方法创建:def method 1(self): 调用时不用带self

实例化:实例名=类名()
调用属性:实例名.属性
调用方法:实例名.方法()

  • 特殊参数:self(创建方法时将第一参数位置留给self)
  1. 接收实例化过程中传入的数据,当实例对象创建后,实例便会代替 self,在代码中运行。
  2. 在类的内部调用类属性,而实例又还没创建之前,self先代替实例接收数据。(eg. self.属性名、self.方法名)
  • 初始化方法(构造函数)
    语法:def __init __(self)
    作用:当每个实例对象创建时,方法内代码无需调用就嫩自动运行
class Chinese:

    def __init__(self): 
        print('很高兴遇见你,我是初始化方法')

person = Chinese()
>>很高兴遇见你,我是初始化方法
类的定制和继承(子、父类)

子类:1. 创建新的属性、方法
  2. 修改父类的属性方法

  1. 继承语法:
    class A【父类】(B【父类名】):
    object是所有类的父类
    class Chinese <==>class Chinese(object)
    isinstance()函数:判断某个实例是否属于某个类  输出true、FALSE
    print( isinstance(1,int)) >>True
  2. 多层、重继承:class A(B,C,D)和子类更相关的父类会放在更左侧
    调用时:左—>右(就近原则)
    在这里插入图片描述
class C0:
    name = 'C0'
class C2(C0):
    num = 2
class C1:
    num = 1
class C3:
    name = 'C3'
class C4(C1,C2,C3):
    pass
ins = C4()
print(ins.name) # 打印出C0
print(ins.num) # 打印出1

多重继承中,若某父类还有父类的话,会先继续往上找到顶。
子类继承父类方法:
def语句后接父类.方法(参数)

class Chinese:

    def land_area(self,area):
        print('我们居住的地方,陆地面积是%d万平方公里左右。'% area)

class Cantonese(Chinese):
    # 间接对方法进行重写
    def land_area(self, area, rate = 0.0188):
        Chinese.land_area(self, area * rate)
        # 直接继承父类方法,再调整参数。

gonger = Chinese()
yewen = Cantonese()
gonger.land_area(960)
yewen.land_area(960)
编码

1byte=8bit
UTF-8:针对Unicode的可变长度字符编码,它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度,当字符在ASCII码的范围时,就用一个字节表示,UTF-8还可以兼容ASCII编码。
Unicode是内存编码的规范,UTF-8是如何保存和传输Unicode的手段

  • 编码:‘内容’.encode(‘编码表’)
  • 解码:‘内容’.decode(‘编码表’)
文件读写

open(‘文件位置’,‘r’,encoding=‘utf-8’)

  1. 相对路径:最完整的路径
  2. 绝对路径:【相对于当前文件夹】的路径(编写的这个py文件所放的文件夹路径!)
open('/Users/Ted/Desktop/test/word/abc.txt')   #相对路径
open('word/abc.txt')  #绝对路径

Windows系统里,常用\来表示绝对路径,/来表示相对路径,所以当你把文件拖入终端的时候,绝对路径就变成:C:\Users\Ted\Desktop\test\abc.txt
(与转义字符冲突,修改为)
打开

open('C:\\Users\\Ted\\Desktop\\test\\abc.txt')
#将'\'替换成'\\'

open(r'C:\Users\Ted\Desktop\test\abc.txt')
#在路径前加上字母r

读取

filecontent=file.read()
print(filecontent)

关闭

  1. 计算机能够打开的文件数量是有限制的,open()过多而不close()的话,就不能再打开文件了。
  2. 能保证写入的内容已经在文件里被保存好了。
file1.close()

写入:覆盖原有内容

file1 = open('/Users/Ted/Desktop/test/abc.txt', 'w',encoding='utf-8') 
file1.write('张无忌\n')     
file1.write('宋青书\n') 

增加:append

file1 = open('/Users/Ted/Desktop/test/abc.txt', 'a',encoding='utf-8') 
file1.write('张无忌\n')     
file1.write('宋青书\n') 

在这里插入图片描述
图片、音频以二进制保存,用’wb’
with 写法

with open('文件地址','读写模式')as 变量名:
	变量名.write('')
	#无需用close()关闭

join():合并字符串

b.join(a)
语法:str.join(sequence) #str:用什么字符串连接
split():分离字符串变成列表
readline():按行读取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值