林莉莉python

本文介绍了Python中的基本概念和技术,如字符串连接、转义规则、中文变量支持、数学库使用、交互模式、条件判断、列表和字典操作、面向对象编程、文件操作、异常处理以及高阶和匿名函数。
摘要由CSDN通过智能技术生成

p6

p7

字符串连接

python引号就近匹配原则 下面是反斜杠转义字符解决问题三引号(不用换行啦)

p8

p9

如果python语言本身支持中文变量名,如果控制台或日志本身代码不兼容也不行。

p10引入数学库、

p11注释快捷键

p12

通常情况下\n一个完整转义符在len中占一个长度

记得True False大写首字母布尔类型  n=None

type对象不只是变量,也可以是直接的浮点数等

p13python两种交互模式

Python有两种执行模式,命令行模式和交互模式,命令行模式:写好命令后,运行的时候Python解释器会一行一行对文件进行解析和执行。正因为Python解释器可以不读完整个文件,就执行某一行命令所以交互模式有点不需要不需要print就输出,而且quit()退,启用在cmd里打Python3即可,不需要创建文件,只需要进入交互式环境

p14input着重理解 返回类型

input返回类型一律是字符串,记得类型转换。

整数不能和字符串连接在一起打印

p15条件判断

执行语句要有缩进,所有if下面有缩进的语句都被认为是if条件为真时需要执行的语句,下面是错误示范,因为没有缩进,解释器认为if语句已经结束,莫名其妙出来个else?报错!

p16elif

python会根据缩进程度判断那个分支

p17逻辑运算

p18列表方括号

增加append 删除remove 可以用索引 len函数求的是列表里的单位个数

列表可变论述

列表大杂烩

p19 字典 元组

引入元组 为字典键值对服务,因为列表是可变的而元组不可变

这个in检索的是“键”

如果添加新的键值对,键重名了,就覆盖以前的。判断是否有。就用上图的in,返回false或者true

len 引用zhontacts)求有多少键值对

大多针对“键”的操作都是用方括号

p20for循环 与range、

因为字典名.items在for循环时,变量会被赋值为键和值组成的元组,上图相当于把元组第一个值付志伟staffid,第二个赋值为temperature,相当于下图

结束值不包括,

P21while循环

range里面放一个值,默认起始值是0


p22困难点

字符串格式化说白了就是去除加号

上图0开始表示第一个参数 下图改良了一些

下面是懒人写法 需要注意分清

上图前面加f是直接赋值

p23python函数

dry原则:don't repeat yourself

def关键词,下面函数内容都是缩进

注意上面f关键字

p24Python函数进阶

函数返回的值可以被调用,也可以直接打印出来 下图例子好好理解

函数没有return语句,默认返回none

上图扔要注意def后面de“:”,以及f那个花括号中,f后面没有点!

p25引入模块之造轮子

两个除号是向下取整数

避免造轮子;引入python标准库里的其他模块

 第二个 第三个你在那个模块里要使用的函数或者变量,引用的时候不需要带着模块名字

引入第三方库流程差不多,但是要先从互联网下载别人写好的模块(pip install)pypi.org可以对第三方库进行搜索,安装的话去到终端输入pip stall后面加上库的名字,当然安装后还要import引用库

p26面向对象编程

面向对象编程,首先将事务分解到对象身上,描述各个对象的作用,然后才是他们的交互

封装继承多态

p27python创建类

注意定义类也要有冒号,缩进。构造函数名字始终是_def_,里面的第一个参数是self,然后给self.的量赋值。类的名字不是下划线命名了

p28python类plus

类里面不是构造函数也要有self参数

构造函数里的slef可以帮助我们把属性值绑定到对象身上,而方法也有self是为了让我们在方法里面去去获取和修改方法绑定的属性。

# 要求:# 1. 属性包括学生姓名、学号,以及语数英三科的成绩
# 2. 能够设置学生某科目的成绩
# 3. 能够打印出该学生的所有科目成绩
class Student:
    def __init__(self, name, student_id):
        self.name = name
        self.student_id = student_id
        self.grades = {"语文": 0, "数学": 0, "英语": 0}
    def set_grade(self, course, grade):
        if course in self.grades:
        self.grades[course] = grade
    def print_grades(self):
        print(f"学生{self.name} (学号:{self.student_id}) 的成绩为:")
        for course in self.grades:
        print(f"{course}: {self.grades[course]}分")
chen = Student("小陈", "100618")
chen.set_grade("语文", 92)
chen.set_grade("数学", 94)

p29python类继承

唯一注意一点,当子类构造函数的参数在父类的基础上又多了一些的时候,可以在子类调用方法里

super()._init_(参数)来解决子父类里面重的参数

p30文件操作

定位文件路径两种方法 绝对路径和相对路径

下图操作系统也可以忽略./斜杠

p31文件操作

python里任何对文件的操作,都需要先打开文件(绝对路径相对路径打开都行),下图不写w或者r默认为读模式

read一次性读完所有,为什么第二次read没有东西,因为read还在第一次读到结束的位置

下面那个不想让read一次性读完,也可以用read字节额定读的字节数量

readline进阶

文件的释放 withif进阶(注意缩进 还有withif的冒号)

用withas语句记得那个赋予变量f放到as后面,而且加冒号,下面的句子全用缩进

为什么上图输出有额外的空行,原因是readline会把每行的换行符读取,而且print函数本身也是自带换行

readlines例子好好理解下图

下图是小小进阶,打印列表的方式,反而打印不出换行符了

p32如何读文件

把程序输出结果储存为文件,读文件模式下找不到2文件会报错,但是写文件找不到那个文件,会直接创建出新的。用“w”模式三思而后行,因为那个文件以前有东西会被清空再写入。如果不想出现上述情况,用“a‘’关键字,表示附加内容,当然a关键字也是如果没有文件直接创建,解决上述烦恼只需要r+关键字。就记住了不想更改原文件的东西写入东西,要么a,要么r+

p33程序异常处理

try冒号后缩进放置你认为可能会出现错误的语句,excpept会捕捉,下面的句子就是从上到下依次捕捉,else表示没有任何异常情况下执行的语句,finally是无论如何都会执行的语句。捕捉所有就是只有except

所以,一旦异常被捕获并处理,后续的代码将不会执行。若在 try 块中发生了异常,程序会直接跳转到对应的 except 块中执行相关操作,并继续执行 except 块之后的代码。

p34bug

p36python高阶和匿名函数

一旦函数有括号 代表被调用了 传入高阶函数的的不是函数 而是函数的结果

上图匿名函数,冒号后面是直接返回的结果

下图是lambda也可以定义好后被直接调用,前面lambda必须括起来表示是一个整体

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值