Python入门进阶

网友投稿 651 2022-05-28

Python入门及进阶

一、python是什么?

二、python基础知识

三、python面向对象

四、文件处理

一、python是什么?

python是一种跨平台、解释性、面向对象的高级编程语言。设计哲学是:优雅 明确 简单

适合领域:web网站和各种网络服务、系统工具和脚本、包装其他语言开发的模块

不适合领域:偏硬件驱动程序代码、移动开发、游戏开发

python与其他语言相比:

编译型语言:需要经过编译、链接两个步骤。编译是把源代码翻译成机器码,链接是把各个模块的机器码和依赖库串连起来生成可执行文件。

解释型语言:程序不需要编译,在运行程序的时候才逐行翻译。

二、python基础知识

python变量不需要声明,变量在使用前必须赋值,只有赋值后该变量才会被创建

六个标准的数据类型:数字,字符串,列表list,元组tuple,集合set,字典dictionary

不可变数据:数字,字符串,元组

可变数据:列表,集合,字典

可变和不可变的实质是指内存中那块内容是否可以被改变。

python支持中文 表示为u‘中文’ 字符串前面加个u 当然编码也需要设置为utf-8

切片表达 [i : i+n : m]

切片的基本含义是:从序列的第i位索引起,向右取到后n位元素为止,按m间隔过滤 。

列表:列表可以完成大多数集合类的数据结构的实现,列表中元素类型可以不相同,支持数字,字符串,列表等

字典:另一种可变容器模型,可存储任意类型的数据对象。每个键值用冒号分割,每个对用逗号分隔。键必须是唯一的,但值不必。值可取任意数据类型,键必须是不可变的。

字典遍历技巧:在字典中遍历时,关键字和对应的值可以使用 items() 方法同时解读出来

函数:能提高应用的模块性,和代码的重复利用率。以def xxx()开始,return结束

在 python 中,类型属于对象,变量是没有类型的。

不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变a的值,相当于新生成了a。

可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。

模块和包

模块就是.py文件,包含你定义的函数和变量。模块可被其他程序引入,以使用该模块中的函数等功能。

from … import 语句

Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中

Import模块后,python解释器如何找到?这就涉及到Python的搜索路径,搜索路径是由一系列目录名组成的,Python解释器就依次从这些目录中去寻找所引入的模块

包是一个分层次的文件目录结构,它定义了一个由模块及子包,和子包下的子包等组成的 Python 的应用环境

包就是文件夹,但该文件夹下必须存在 init.py 文件, 该文件的内容可以为空。init.py 用于标识当前文件夹是一个包

一般引用包下的模块,需要给python解释器加上路径:sys.path.extend([’…/’,’…/common’]),不然可能找不到这个包

三、python面向对象

类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

方法:类中定义的函数。

Python入门及进阶

类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。

实例变量:在类的声明中,属性是用变量来表示的,这种变量就称为实例变量,实例变量就是一个用 self 修饰的变量。

局部变量:定义在方法中的变量,只作用于当前实例的类。

继承:类的继承机制允许多个基类,派生类可以覆盖基类中的任何方法,方法中可以调用基类中的同名方法。

私有方法和私有变量:两个下划线开头,外部无法调用

self代表类的实例,而非类。类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self。

实例变量的来由:类的成员变量无需声明,想到即用,这样动态添加的属性只属于实例,不属于类

区别:类变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果;而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象

四、文件处理

f=open(filename,mode)

‘rb’,’wb’等是以二进制方式打开

区别是r+读写不存在的文件会报错,w+在文件不存在的情况下会自动创建文件。其他无区别

Python偏移量:

设置文件当前位置 file.seek(offset[, whence])

返回文件当前位置 file.tell()

利用迭代器遍历read:

Python

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:万事开头难
下一篇:《深入理解Android:Java虚拟机ART》 —1.2 准备环境和工具
相关文章