【python】第四节引入模版+文件的读取

拿来吧你,

想要知道一个列表的中位数

比如就可以使用python标准库里面的statistic

复制代码
import statistics
print(statistics.median([1,89,67,34,1.123,78]))

引入模块的方式有三种,

import语句

from...import... 语句

from...import*语句

但是使用第一种的时候,可能会存在不同的标准库里面会有重名的现象,比如abc()函数

如果好奇标准函数是怎么写的windows里面是选中ctrl然后选择函数,就可以看到源代码

pypi.org库可以对于第三库进行搜索

比如搜索akshare就能获得,

(阿轲分享)是由国内开发者维护的 Python 财经数据接口库,核心价值在于一站式获取免费、实时 / 历史的金融数据,无需自己编写爬虫去各大财经网站抓数据,极大降低了金融数据分析的门槛。

然后到终端上安装库

面向对象编程,利用类创建对象,先会把一些共同特征圈起来,就是把属性和方法与对象进行绑定(纪传体)

面向过程编程,对于每个步骤而言的编程(编年体)

面向对象三大将军(特征):封装、继承、多态

封装 就是将里面的藏起来,对外只留一个小口,让别人进入(不需要 )

父类的性质都能被子类继承

python创建类

类可以说是对象的模板

Python的命名规则是Pascal命名规则:UserAccount,CustomerOrder,PaymentData

创建一个类,然后往里面放属性

class

定义属性固定使用两个下划线的_init_()括号里面可以放任意属性的参数

约定俗成是自身的self

对象的属性就是self.xxxx

class OldCat:

def init(self):

self.name='Lambton'

cat1=OldCat()

这样的话就可以引入一个叫cat1的OldCat它会具有Lambton的属性

比如一只小狗的名字是bonnie,04年出生,白色的

复制代码
class CuteDog:

    def __init__(self,dog_name,dog_age,dog_color):

        self.name=dog_name

        self.age=dog_age

        self.color=dog_color

littledog=CuteDog("bonnie",2004,"white")

print(f"小狗{littledog.name}的年龄是{littledog.age},颜色是{littledog.color}")

注意字符串一定要加双引号,这样子的话,才可以被程序识别到。十进制所以说不能用0开头

会猫叫属性的小狗

复制代码
class CuteDog:

    def __init__(self,dog_name,dog_age,dog_color):

        self.name=dog_name

        self.age=dog_age

        self.color=dog_color



    def JiaoSheng (self):
        print("喵"* self.age)

littledog=CuteDog("bonnie",24,"white")
littledog.JiaoSheng()

案例:

定义一个学生类,属性包括学生的学号还有语数英三科的成绩

设置学生某科目的成绩

打印出学生所有科目的成绩

class Student

继承:现实中的儿子继承父亲

复制代码
class CuteDog:

    def __init__(self,dog_name,dog_custom,dog_food):

        self.name=dog_name

        self.custom=dog_custom

        self.food=dog_food

class SonDog(CuteDog):
    def wasai(self):
        print(self.name+"在拉屎")


littledog=SonDog("bonnie","日常玩球球","white")
littledog.wasai()

子类继承父类,SonDog继承了CuteDog的name,custom,food

所以调用的时候输入这些特征,就会直接使用父类中的方法

案例

人力系统该发工资了

有两种重要的情况,兼职按天发工资,正式员工按月发工资

复制代码
class staff:

    def __init__(self,name):

        self.name=name





    def printer(self):

        print(f"{self.name}的工资是")



class fulltime_staff(staff):

    def __init__(self,name,month):

        super().__init__(name)
        self.month=month

    def fulltimesalary(self):
        fulltimesalary=self.month*1200
        return fulltimesalary




class parttime_staff(staff):

    def __init__(self,name,day):
        super().__init__(name)
        self.day=day

    def parttimesalary(self):
        parttimesalary=self.day*120
        return parttimesalary


zhangsan=fulltime_staff("zhangsan",14)

lisi=parttime_staff("lisi",56)

lisi.printer()
print(lisi.parttimesalary())

python的文件路径,绝对路径使用反斜杠\

相对路径是用点 . 点点..开头的

使用python读文件的第一个操作是打开目标文件,使用open函数,里面直接放上文件的路径,相对路径与绝对路径都可以,比如说打开一张图片

现在一般使用utf-8的模式读取文件

代码喜欢txt纯文本

文件特别大的时候不要用read,这样内存会爆炸

使用txt文件的话,要注意保存

read返回全部文件内容字符串

readline返回一行文件内容字符串

readlines返回全部文件内容组成的列表

读完文件之后还要做的事情就是关闭文件

除了

1.文件名.close()这种方式

还有

2.with open("./data.txt")as 文件名

print(文件名.())

这样之后文件会自动关闭

右击文件,新建一个文件,这样就和源代码文件处于一个文件夹之下,使用相对路径对于文件进行调用。

复制代码
f=open("./古诗.txt","r",encoding="utf")
print(f.read())
f.close()

readlines返回的是一个列表

readline返回的是一行又一行

复制代码
f=open("./古诗.txt","r",encoding="utf")
print(f.readline())
print(f.readline())
f.close()

一位老师想要读取熊孩子们的成绩计算平均数

那可以使用python中写文件的操作

如果读文件,文件不存在就会报错。但是写文件文件不存在的话,就会自动新建一个文件

write不会默认帮忙换行,想要换行的话就要加上\n

复制代码
with open("./data.txt","w",encoding="utf-8")as f:

    f.write("hey\n guys")

    f.close

如果不想把原本的文件内容清空只是想要追加文件内容的话,就使用a模式,使用r+既可以读又可以写

复制代码
with open("./data.txt","a",encoding="utf-8")as f:

    f.write("\n black skin")

    f.close
相关推荐
@zulnger3 小时前
读写Excel
开发语言·python·excel
带土13 小时前
9. C++ 套接字(Socket)
开发语言·c++
molaifeng10 小时前
Go 语言如何实现高性能网络 I/O:Netpoller 模型揭秘
开发语言·网络·golang
崇山峻岭之间10 小时前
Matlab学习记录33
开发语言·学习·matlab
Evand J10 小时前
【2026课题推荐】DOA定位——MUSIC算法进行多传感器协同目标定位。附MATLAB例程运行结果
开发语言·算法·matlab
小二·10 小时前
Python Web 开发进阶实战:性能压测与调优 —— Locust + Prometheus + Grafana 构建高并发可观测系统
前端·python·prometheus
jllllyuz10 小时前
基于MATLAB的二维波场模拟程序(含PML边界条件)
开发语言·matlab
忆锦紫10 小时前
图像增强算法:Gamma映射算法及MATLAB实现
开发语言·算法·matlab
七牛云行业应用11 小时前
重构实录:我删了 5 家大模型 SDK,只留了 OpenAI 标准库
python·系统架构·大模型·aigc·deepseek