python学习

python学习

1.1python解释器

作用:翻译代码,提交给计算机运行

二、基础语法

2.1、字面量

定义:固定的值,区别于变量。如整数,小数,字符串…

2.2、注释

单行注释:#
在这里插入图片描述

多行注释:
在这里插入图片描述

2.3、变量

定义:变量名称 = 变量的值
在这里插入图片描述

2.4、数据类型

type():可以查看数据的类型

2.5、数据类型转换

原因:从文件中读取的数字,默认是字符串,我们需要转换成数字类型;input()语句,默认结果是字符串,若需要数字也需要转换等等。
在这里插入图片描述
注:浮点数转整数会丢失精度。

2.6、标识符

  • 定义:在编程的时候所使用的一系列名字,用于给变量、类、方法等命名,用来做内容的标识。
  • 规则:
    1内容限定:字母,数字,下划线
    2大小写敏感
    3不可使用关键字
  • 变量命名规范:
    1多字母使用下划线
    2英文字母全小写

2.7、运算符

  • 算数运算符:
    //:整除,9//2为4
    %:取余
    :指数,22为4
  • 复合赋值运算符:
    +=、-=、*=、/=、//=、%=、**=
  • 比较运算符:

2.8、字符串扩展

2.8.1、字符串的三种定义方式

在这里插入图片描述
问:如果字符串内部本身包含单引号,双引号呢?
在这里插入图片描述

2.8.2、字符串拼接

使用“+”号连接字符串变量或字符串字面量即可。
注:无法和非字符串类型进行拼接,会报错。

2.8.3、字符串格式化

问题:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 常用占位符:
    1字符串%s
    2整数%d
    3浮点数%f

2.8.4、格式化的精度控制

在这里插入图片描述

2.8.5、快速字符串格式化

作用:不理会类型,不做精度控制。适合对没有精度要求的快速使用
在这里插入图片描述

2.8.6、input函数

  • input()语句的功能是,获取键盘输入的数据
  • 可以使用:input(提示信息),用以在使用者输入内容之前显示提示信息。
  • 要注意,无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型

三、python判断语句

3.1、条件判断语句

在这里插入图片描述
在这里插入图片描述

3.2、if-else语句

在这里插入图片描述

3.3、if-elif-else语句

在这里插入图片描述

3.4、判断语句的嵌套

嵌套的关键在于空格缩进。
在这里插入图片描述

四、循环语句

4.1、while循环基础语法

在这里插入图片描述

4.2、while循环的嵌套

在这里插入图片描述

4.3、for循环基础语法

在这里插入图片描述
在这里插入图片描述

4.4.1、range语句

在这里插入图片描述
在这里插入图片描述

4.4.2、变量作用域

在这里插入图片描述
在这里插入图片描述

4.4、for循环的嵌套应用

在这里插入图片描述

4.5、循环中断

4.5.1、break

直接结束所在循环

4.5.2、continue

中断本次循环,直接进入下一次循环

五、函数

5.1、函数的定义

在这里插入图片描述

  • 注:参数或返回值不需要可以省略。

5.2、None的应用场景

相当于java中的null,
在这里插入图片描述

5.3、函数说明文档

在这里插入图片描述
在这里插入图片描述

5.4、函数的嵌套

在这里插入图片描述

5.5、变量的作用域

5.5.1、局部变量

定义在函数体内的变量,只在函数体内生效(注意区别for函数的变量作用域)
在这里插入图片描述

5.5.2、全局变量

在这里插入图片描述

5.5.3、global关键字

在函数内部声明变量为全局变量
在这里插入图片描述
在这里插入图片描述

六、数据容器

作用:可以容纳多份数据的数据类型,可以容纳任意数据类型的数据(和java进行区别,数据容器什么类型都能一起放入)。类似java中的集合、数组。
分类:列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict

6.1、数据容器:List(列表)

在这里插入图片描述
在这里插入图片描述

6.1.1、列表的索引

  • 正向索引
    在这里插入图片描述
  • 方向索引
    在这里插入图片描述
  • 嵌套列表下的索引
    在这里插入图片描述

6.1.2、列表的方法

python中函数和方法的区别在于:方法是函数作为类的成员。
在这里插入图片描述
在这里插入图片描述

  • 查找某元素的下标
    在这里插入图片描述
  • 修改特定位置的索引值
    在这里插入图片描述
  • 插入元素
    在这里插入图片描述
  • 追加元素1
    在这里插入图片描述
  • 追加元素2
    在这里插入图片描述
  • 删除元素
    在这里插入图片描述
  • 删除某元素在列表中的第一个匹配项
    在这里插入图片描述
  • 清空列表内容
    在这里插入图片描述
  • 统计某元素在列表中的数量
    在这里插入图片描述
  • 统计列表内元素数量
    在这里插入图片描述

6.1.3、List(列表)的遍历

  • while循环
    在这里插入图片描述
  • for循环
    在这里插入图片描述

6.2、数据容器:tuple(元组)

定义:元组一旦定义完成,就不可修改。适用于希望在程序中封装数据,又不希望封装的数据被篡改。
特点:不可以修改
在这里插入图片描述

6.2.1、元组的相关操作

在这里插入图片描述

  • 注:
    在这里插入图片描述

6.2.2、元组的遍历

在这里插入图片描述

6.3、数据容器:str(字符串)

字符串是字符的容器,一个字符串可以存放任意数量的字符。
特点:只可以存储字符串,不可以修改
在这里插入图片描述

6.3.1、字符串的索引

在这里插入图片描述

6.3.2、字符串的常用操作

在这里插入图片描述

  • 查找特定字符串的下标索引值
    在这里插入图片描述
  • 字符串的替换
    在这里插入图片描述
  • 字符串的分割
    在这里插入图片描述
  • 字符串的规整操作(去掉前后空格)
    在这里插入图片描述
  • 字符串的规整操作(去前后指定字符串)
    在这里插入图片描述
  • 统计字符串中某字符串的出现次数
    在这里插入图片描述
  • 统计字符串的长度
    在这里插入图片描述

6.3.3、字符串的遍历

在这里插入图片描述

6.4、数据容器(序列)的切片

序列是指:内容连续、有序,可使用下标索引的一类数据容器。列表、元组、字符串,均可以可以视为序列。
切片:从一个序列中,取出一个子序列。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.5、数据容器:set(集合)

特点:不重复且无序
在这里插入图片描述

6.5.1、集合的操作

在这里插入图片描述

  • 添加新元素
    在这里插入图片描述
  • 移除元素
    在这里插入图片描述
  • 从集合中随机去除元素(会得到一个元素的结果,同时集合本身被修改,元素被移除)
    在这里插入图片描述
  • 清空集合
    在这里插入图片描述
  • 取两个集合的差集
    在这里插入图片描述
  • 消除2个集合的差集
    在这里插入图片描述
  • 2个集合合并
    在这里插入图片描述
  • 查看集合的元素数量
    在这里插入图片描述

6.5.2、集合的遍历

在这里插入图片描述

6.6、数据容器:dict(字典、映射)

特点:key-value且不能重复,重复会进行覆盖
在这里插入图片描述

6.6.1、字典的操作

在这里插入图片描述

  • 字典数据的获取
    在这里插入图片描述

  • 嵌套字典的获取
    在这里插入图片描述

  • 新增元素
    在这里插入图片描述

  • 更新元素
    在这里插入图片描述

  • 删除元素
    在这里插入图片描述

  • 清空字典
    在这里插入图片描述

  • 获取全部的key
    在这里插入图片描述

  • 计算字典内键值对的数量
    在这里插入图片描述

6.6.2、字典的遍历

在这里插入图片描述

6.7、数据容器对比总结

在这里插入图片描述

6.8、数据容器的通用操作

在这里插入图片描述

七、函数进阶

7.1、函数多返回值

在这里插入图片描述

7.2、函数的多种传参方式

7.2.1、位置参数

调用函数时根据函数定义的参数位置来传递参数
在这里插入图片描述

7.2.2、关键字参数

在这里插入图片描述

7.2.3、缺省参数

缺省参数也叫默认参数,用于定义函数,为参数提供默认值,调用函数时可不传该默认参数的值(注意:所有位置参数必须出现在默认参数前,包括函数定义和调用)
在这里插入图片描述

7.2.4、不定长参数

不定长参数也叫可变参数. 用于不确定调用的时候会传递多少个参数(不传参也可以)的场景

位置传递

在这里插入图片描述

关键字传递

在这里插入图片描述

7.3、匿名函数

7.3.1、函数作为参数传递

定义:函数本身是可以作为参数,传入另一个函数中进行使用的。
作用:传入计算逻辑,而非传入数据。
在这里插入图片描述

7.3.2、lambda匿名函数

在这里插入图片描述
在这里插入图片描述

八、文件操作

文件:如一篇文章,一段视频,一个可执行文件等。操作系统以文件为单位管理磁盘中的数据。

8.1、文件的编码

计算机只认识0和1,所以需要将内容翻译成0和1才能保存在计算机中。同时也需要编码, 将计算机保存的0和1,反向翻译回可以识别的内容
常用的是UTF-8编码

8.2、文件的读取

在这里插入图片描述

  • open()打开函数
    在这里插入图片描述
    在这里插入图片描述
  • read()方法
    在这里插入图片描述
  • readlines()方法:会读取到换行
    在这里插入图片描述
  • readline():一次读取一行内容
    在这里插入图片描述
  • for循环读取文件行
    在这里插入图片描述
  • close():关闭文件对象
    在这里插入图片描述
  • with open语法
    在这里插入图片描述

8.3、文件的写入

在这里插入图片描述

  • 注:
    w模式,文件不存在,会创建新文件
    w模式,文件存在,会清空原有内容
    close()方法,带有flush()方法的功能

8.4、文件的追加

在这里插入图片描述

  • 注:
    可以使用”\n”来写出换行符

九、异常模块与包

异常定义:当检测到一个错误时,Python解释器就无法继续执行了,反而出现了一些错误的提示。

9.1、异常的捕获办法

异常捕获(异常处理):对可能出现的bug,进行提前准备、提前处理。

  • 基本语法:
    在这里插入图片描述
  • 如何捕获所有异常
    except:/except Exception:

9.2、异常的传递

异常具有传递性。

9.3、python模块

  • 模块:一个python文件,以.py结尾。内部可以定义类、函数、变量,还有可执行代码。
  • 模块的作用:一个模块就是一个工具包,可以帮我们快速实现一些功能。

9.3.1、模块的导入

在这里插入图片描述

import 模块名

在这里插入图片描述

from 模块名 import 功能名

在这里插入图片描述

from 模块名 import *

在这里插入图片描述

as 定义别名

在这里插入图片描述

9.3.2、自定义模块

Python中已经帮我们实现了很多的模块. 不过有时候我们需要一些个性化的模块, 这里就可以通过自定义模块实现。
在这里插入图片描述

if name == “main
  • 问:在实际开发中,当一个开发人员编写完一个模块后,为了让模块能够在项目中达到想要的效果,这个开发人员会自行在py文件中添加一些测试信息,例如,在my_module1.py文件中添加测试代码test(1,1)。
    此时,无论是当前文件,还是其他已经导入了该模块的文件,在运行的时候都会自动执行test函数的调用
    在这里插入图片描述
  • 解决方法:
    在这里插入图片描述
__all__变量

如果一个模块文件中有__all__变量,当使用from xxx import *导入时,只能导入这个列表中的元素
在这里插入图片描述

9.4、python包

  • 作用:如果Python的模块太多了,就可能造成一定的混乱,通过Python包的功能来管理。 包的作用就是包含多个模块,但包的本质依然是模块
    init.py文件的作用:创建包会默认自动创建的文件,通过这个文件来表示一个文件夹是Python的包,而非普通的文件夹。
    在这里插入图片描述

9.4.1、自定义包

导入包方式一:import 包名.模块名

在这里插入图片描述

导入包方式二:from 包名 import *

引用方式:模块名.目标
注意:必须在__init__.py文件中添加__all__ = [],控制允许导入的模块列表
在这里插入图片描述

9.4.2、安装第三方包

  • pip慢速安装
    在这里插入图片描述
  • pip慢速安装
    在这里插入图片描述
  • pip快速安装
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名称
    在这里插入图片描述
  • pycharm中安装
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

十、数据可视化——折线图可视化

10.1、json数据格式

  • 定义:json就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互。类似国际通用语言-英语。
  • 原因:各种编程语言存储数据的容器不尽相同,如python有字典dict,其他语言可能没有对应的字典。
    在这里插入图片描述
  • Python语言使用JSON有很大优势,因为:JSON无非就是一个单独的字典或一个内部元素都是字典的列表
    在这里插入图片描述

10.2、pyecharts模块安装

做数据可视化效果图

  • 安装:
    在这里插入图片描述

10.3、pyecharts快速入门

十三、面向对象

13.1、类的定义和使用

在这里插入图片描述

13.2、成员方法和变量的定义和使用

在这里插入图片描述

  • self的作用:
    1表示类对象本身的意思
    2只有通过self,成员方法才能访问类的成员变量和成员方法
    3self出现在形参列表中,但是不占用参数位置,无需理会
    在这里插入图片描述
    在这里插入图片描述

13.3、构造函数

创建对象后,一个一个对成员变量赋值过于麻烦。

  • Python类可以使用:init()方法,称之为构造方法。
    在这里插入图片描述

13.4、魔术方法

内置的类方法,如__init__ 构造方法
在这里插入图片描述

str:字符串方法

类似于java中的toString方法
在这里插入图片描述

lt:小于符号比较方法

在这里插入图片描述

le:小于等于符号比较方法

在这里插入图片描述

eq:等于符号比较方法

在这里插入图片描述

13.5、封装

面向对象的三大特性:封装,继承,多态
封装:将现实事物的属性行为封装为类的成员变量和成员方法。

私有成员

在这里插入图片描述
在这里插入图片描述

13.6、继承

单继承

在这里插入图片描述

多继承

在这里插入图片描述

  • 注:
    1多个父类中,如果有同名的成员,那么默认以继承顺序(从左到右)为优先级。即:先继承的保留,后继承的被覆盖

复写

相当于java中的重写
在这里插入图片描述
在这里插入图片描述

13.7、类型注解

  • 定义:在代码中涉及数据交互的地方,提供数据类型的注解(显式的说明)
  • 作用:
    1帮助第三方IDE工具(如PyCharm)对代码进行类型推断,协助做代码提示
    2帮助开发者自身对变量进行类型注释(备注)
  • 为什么使用类型注解:
    在这里插入图片描述

13.7.1、变量的类型注解

  • 基础语法1: 变量: 类型
    在这里插入图片描述
    在这里插入图片描述

  • 基础语法2:# type: 类型
    在这里插入图片描述

如何使用

在这里插入图片描述

注:

在这里插入图片描述

13.7.2、函数(方法)的类型注解

形参注解

在这里插入图片描述
在这里插入图片描述

返回值注解

在这里插入图片描述

13.7.3、Union类型注解

定义联合类型注解
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 注:使用Union需要导包,from typing import Union

13.8、多态

定义:完成某个行为时,使用不同的对象会得到不同的状态。
在这里插入图片描述

13.8.1、抽象类/接口

在这里插入图片描述

十四、Python执行SQL语句操作MySQL数据库

  • pymysql
    在这里插入图片描述

创建到mysql的数据库连接

在这里插入图片描述

创建数据库

在这里插入图片描述

查询

在这里插入图片描述

CRUD

在这里插入图片描述

  • 注:
    在这里插入图片描述
    在这里插入图片描述

补充

print输出不换行

在这里插入图片描述

制表符\t

在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值