为进大厂,python必须要掌握的核心知识

前言

python简介

Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
Python 是交互式语言: 这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码。
Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
像 Perl 语言一样,Python 源代码同样遵循 GPL(GNU General Public License)协议。

在这里插入图片描述

Python 特点

1.易于学习: Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
2.易于阅读: Python代码定义的更清晰。
3.易于维护: Python的成功在于它的源代码是相当容易维护的。
4.一个广泛的标准库: Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
5.互动模式: 互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。
6.可移植: 基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。
7.可扩展: 如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。
8.数据库: Python提供所有主要的商业数据库的接口。
9.GUI编程: Python支持GUI可以创建和移植到许多系统调用。
10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。

一、对象

python中一切皆对象,每个对象由:标识、类型、value组成。

标识: 用于唯一的标识对象,通常对应于对象在计算机内存中的地址,使用内置函数id(obj)可返回对象obj。

类型: 用于表示对象存储的“数据”的类型。可以用type(obj)获得对象的所属类型。
value表示对象所存储的数据的信息。使用print(obj)可以直接打印出值。

二、堆和栈

内存中的堆栈和数据结构堆栈不是一个概念,可以说内存中的堆栈是真实存在的物理区,数
据结构中的堆栈是抽象的数据存储结构。

内存空间在逻辑上分为三部分:代码区、静态数据区和动态数据区,动态数据区又分为栈区
和堆区。

代码区: 存储方法体的二进制代码。高级调度(作业调度)、中级调度(内存调度)、低级
调度(进程调度)控制代码区执行代码的切换。

静态数据区: 存储全局变量、静态变量、常量,常量包括final修饰的常量和String常量。系
统自动分配和回收。

栈区: 存储运行方法的形参、局部变量、返回值。由系统自动分配和回收。

堆区: new一个对象的引用或地址存储在栈区,指向该对象存储在堆区中的真实数据。

三、序列

序列是一种数据存储方式,用来存储一系列的数据。内存中,序列就是一块用来存放多个值的连续的内存空间

四、字典

列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。

五、函数

函数也是对象,当执行完def定义函数之后,系统就创建了相应的函数对象,那对象就可以看成是堆里面的一个内存块,函数的参数信息、代码信息都在这个内存块中,当函数执行的时候,就是反复在调用这个内存块。不是调一次建一次对象,而是在定义的时候就创建好了,后面只需要调用即可。

在这里插入图片描述

六、全局变量和局部变量

变量起作用的范围称为变量的作用域,不同作用域内同名变量之间互不影响。

全局变量:

在函数和类定义之外声明的变量。作用域为定义的模块,从定义位置开始直到模块结束。
全局变量降低了函数的通用性和可读性。应尽量避免全局变量的使用。
全局变量一般做常量使用。
函数内要改变全局变量的值,使用 global 声明一下

局部变量:

在函数体中(包含形式参数)声明的变量。
局部变量的引用比全局变量快,优先考虑使用。
如果局部变量和全局变量同名,则在函数内隐藏全局变量,只使用同名的局部变量

七、参数的传递

函数的参数传递本质上就是:从实参到形参的赋值操作。

八、浅拷贝、深拷贝

浅拷贝:不拷贝子对象的内容,只是拷贝子对象的引用
深拷贝:会连子对象的内存也全部拷贝一份,对子对象的修改不会影响源对象

九、可变参数

可变参数指的是“可变数量的参数”。分两种情况:

*param(一个星号),将多个参数收集到一个“元组”对象中,传入参数,0个,100个等都可以
** param(两个星号),将多个参数收集到一个“字典”对象中,需要附带参数名

十、lambda 表达式和匿名函数

lambda 表达式可以用来声明匿名函数。lambda 函数是一种简单的、在同一行中定义函数的方法。lambda 函数实际生成了一个函数对象(所以lambda本质就是函数)。

lambda 表达式只允许包含一个表达式,不能包含复杂语句,该表达式的计算结果就是函数的返回值。
在这里插入图片描述

十二、面向对象的编程

类和对象的关系

我们把对象比作一个“饼干”,类就是制造这个饼干的“模具”。我们通过类定义数据类型的属性(数据)和方法(行为),也就是说,“类将行为和状态打 包在一起”。 对象是类的具体实体,一般称为“类的实例”。类看做“饼干模具”,对象就是根据这个“模具”制造出的“饼干”。

十三、面向对象的三大特征

Python 是面向对象的语言,也支持面向对象编程的三大特性:继承、封装(隐藏)、多态。

零基础Python学习资料介绍

附上Python学习指南

在这里插入图片描述

👉Python学习路线汇总👈

围绕Python所有方向的技术点做的整理,以形成各个领域的知识点汇总,这样就可以按照上面的知识点去找对应的学习资源,保证学得较为全面。

👉Python必备开发工具👈

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末

👉Python学习视频600合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

👉实战案例👈

边学边练是最高效的学习方法,这时候可以搞点实战案例来学习。

👉100道Python练习题👈

检查学习结果。

👉面试刷题👈


👉资料领取👈

这份完整版的Python全套学习资料已为大家备好,朋友们如果需要可以微信扫描下方二维码添加“住隔壁的王叔”,输入"领取资料" 可免费领取全套资料【有什么需要协作的还可以随时联系我】朋友圈也会不定时的更新最前言python知识。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值