Python学习总结

本文介绍了Python编程中模块的导入和使用、类的定义与__init__构造方法、类的继承与方法重写,以及文件的读写操作。通过实例展示了如何创建和操作这些概念。
摘要由CSDN通过智能技术生成

1、创建导入和使用模块

 代码写在扩展名为py的文件,每一个py文件都是一个模块,这些代码可能是变量或者函数的定义,越是复杂的项目模块运用就越多,因为无法将所有的代码都放在同一个py文件里面。

如果一个py文件是一个用来提供信息模块,则其中写入的函数可以被其他的python代码使用,eg:util.py文件中的函数def plot(),可以在main.py中用import util来引用

import  util

a = util.plot()

2、定义和使用类

用class关键字定义一个类,比如学生人群的身高、体重、血型等,用__init__构造方法中定义一些字段来存放相关的信息数据,定义好类后可以简单地创建该类的一个实例,类似于调用函数。

class Student():
    
    def __init__(self):   #创建一个实例时会自动调用
        self.name = 'abc'
        self.age  = 100

   
student1 = Student()  #创建实例

student1.age += 1

print(f'学生1的年龄增长到{student1.age}')
class Net(nn.Module):    #创造类的模块

    def __init__(self):
        super(Net, self).__init__()
        self.fc1 = nn.Linear(28*28, 256)
        self.fc2 = nn.Linear(256, 64)
        self.fc3 = nn.Linear(64, 10)

    def forward(self, x):
        x = F.relu(self.fc1(x))
        x = F.relu(self.fc2(x))
        x = self.fc3(x)

        return x


net = Net()  #创造一个实例对象

3、 类的构造方法__init__和参数self的作用

__init__是类的构造方法,也是一类特殊的方法,当创建类的实例时候,构造方法就会被调用,一般用于初始化实例中的数据, init的第一个参数是类本身,可以用该参数访问类的其他成员,一般写成self,也可以写成其他的,self代表的是实例本身

4、类的继承

如果需要改写类的代码,则可以使用类的继承,被继承的类称为父类。

class  Unit():
        
    def __init__(self,hp,power):

        self.hp = hp
        self.power = power


class Hero(Unit):   #该类为上一个类的子类,父类写在()里面
    
    def __init__(self,hp,power,name):  #增加一个name字段
        super().init__(hp,power)      #super调用父类的__init__方法,为字段hp、power赋值,super本身也是一个类
        self.name = name     #是该类自己的字段




hero_name = input('name:')

hero = Hero(100,10,hero_name)
enemy = Unit(100,10)

print(f'{hero.name},{hero.hp},{hero.power}')

  5、类的方法重写

子类可以对继承自父类的内容进行一定的改写,通常因为两者在该方法实现的过程中产生差异

class  Unit():
        
    def __init__(self,hp,power):

        self.hp = hp
        self.power = power

    def show_info(self):      #父类中定义的类
        print(f'hp{self.hp},power{self.power}')
        

class Hero(Unit):   #该类为上一个类的子类,父类写在()里面
    
    def __init__(self,hp,power,name):  #增加一个name字段
        super().init__(hp,power)      #super调用父类的__init__方法,为字段hp、power赋值,super本身也是一个类
        self.name = name     #是该类自己的字段
       
    def show_info(self):      #子类重写继承自父类的方法
        print(f'hp{self.hp},power{self.power},name{self.name}')  


hero_name = input('name:')

hero = Hero(100,10,hero_name)
enemy = Unit(100,10)

hero.show_info()
enemy.show_info()

print(f'{hero.name},{hero.hp},{hero.power}')

6、文件的读写

file = open("xxx.txt",'w')  #w表示可以写入,r表示可以阅读、b表示用二进制格式展开,调用open函数以后可以自动生成一个可以实际读写文件的对象

lines = file.readlines()  #读文件所有行,readline读文件一行,writeline就是写文件

file.close()  #关闭文件,这样其他需要这个文件的程序可以顺利访问该文件

参考文献

「Python」进阶教程 什么是模块?如何创建导入和使用模块_哔哩哔哩_bilibili

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值