Python基本知识点总结

这篇文章主要介绍了Python基本知识点总结,Python基本知识,Python字符串,Python函数,Python模块,Python创建类,Python类的继承,Python重载,Python单下划线说明,Python双下划线说明,Python头尾双下划线说明,需要的朋友可以参考下

Posted in Python onApril 07, 2022

Python注释

python中单行注释采用 # 开头。

python 中多行注释使用三个单引号(''')或三个双引号(""")。

Python字符串

1. 字符串是以单引号​​'​​​或双引号​​"​​​括起来的任意文本,比如​​'abc'​​​,​​"xyz"​​​等等。请注意,​​''​​​或​​""​​​本身只是一种表示方式,不是字符串的一部分,因此,字符串​​'abc'​​​只有​​a​​​,​​b​​​,​​c​​​这3个字符。如果​​'​​​本身也是一个字符,那就可以用​​""​​​括起来,比如​​"I'm OK"​​​包含的字符是​​I​​​,​​'​​​,​​m​​​,空格,​​O​​​,​​K​​这6个字符。

2. 如果字符串内部有很多换行,用​​\n​​​写在一行里不好阅读,为了简化,Python允许用​​'''...'''​​的格式表示多行内容

Python函数

定义一个函数要使用​​def​​​语句,依次写出函数名、括号、括号中的参数和冒号​​:​​​,然后,在缩进块中编写函数体,函数的返回值用​​return​​语句返回

def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x

Python模块

在Python中,一个.py文件就称之为一个模块(Module)。

为了避免模块名冲突,Python又引入了按目录来组织模块的方法,称为包(Package)

 导入模块:

import sys

作用域

在一个模块中,我们可能会定义很多函数和变量,但有的函数和变量我们希望给别人使用,有的函数和变量我们希望仅仅在模块内部使用。在Python中,是通过​​_​​前缀来实现的。

正常的函数和变量名是公开的(public),可以被直接引用,比如:​​abc​​​,​​x123​​​,​​PI​​等;

类似​​__xxx__​​​这样的变量是特殊变量,可以被直接引用,但是有特殊用途,比如上面的​​__author__​​​,​​__name__​​​就是特殊变量,​​hello​​​模块定义的文档注释也可以用特殊变量​​__doc__​​访问,我们自己的变量一般不要用这种变量名;

类似​​_xxx​​​和​​__xxx​​​这样的函数或变量就是非公开的(private),不应该被直接引用,比如​​_abc​​​,​​__abc​​等;

Python字典(Dictionary)

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:

d = {key1 : value1, key2 : value2 }

内置函数:

序号 

函数及描述

1

​​cmp(dict1, dict2)​​

比较两个字典元素。

2

​​len(dict)​​

计算字典元素个数,即键的总数。

3

​​str(dict)​​

输出字典可打印的字符串表示。

4

​​type(variable)​​

返回输入的变量类型,如果变量是字典就返回字典类型。

 内置方法:

序号

函数及描述

1

​​dict.clear()​​

删除字典内所有元素

2

​​dict.copy()​​

返回一个字典的浅复制

3

​​dict.fromkeys(seq[, val])​​

创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值

4

​​dict.get(key, default=None)​​

返回指定键的值,如果值不在字典中返回default值

5

​​dict.has_key(key)​​

如果键在字典dict里返回true,否则返回false

6

​​dict.items()​​

以列表返回可遍历的(键, 值) 元组数组

7

​​dict.keys()​​

以列表返回一个字典所有的键

8

​​dict.setdefault(key, default=None)​​

和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

9

​​dict.update(dict2)​​

把字典dict2的键/值对更新到dict里

10

​​dict.values()​​

以列表返回字典中的所有值

11

​​pop(key[,default])​​

删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

12

​​popitem()​​

返回并删除字典中的最后一对键和值。

Python面向对象

1. 创建类

使用 class 语句来创建一个新类,class 之后为类的名称并以冒号结尾:

class ClassName:
   '类的帮助信息'   #类文档字符串
   class_suite  #类体

类的帮助信息可以通过ClassName.__doc__查看。

class_suite 由类成员,方法,数据属性组成。

__init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法,当创建了这个类的实例时就会调用该方法

self 代表类的实例,self 在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数

self代表类的实例,而非类

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

self 代表的是类的实例,代表当前对象的地址,而 self.__class__ 则指向类。

2. 访问属性

  • 使用点号 . 来访问对象的属性
  • 可以使用以下函数的方式来访问属性:
  • getattr(obj, name[, default]) : 访问对象的属性。
  • hasattr(obj,name) : 检查是否存在一个属性。
  • setattr(obj,name,value) : 设置一个属性。如果属性不存在,会创建一个新属性。
  • delattr(obj, name) : 删除属性。

Python内置类属性

  • __dict__ : 类的属性(包含一个字典,由类的数据属性组成)
  • __doc__ :类的文档字符串
  • __name__: 类名
  • __module__: 类定义所在的模块(类的全名是'__main__.className',如果类位于一个导入模块mymod中,那么className.__module__ 等于 mymod)
  • __bases__ : 类的所有父类构成元素(包含了一个由所有父类组成的元组)

Python对象销毁(垃圾回收)

 Python 使用了引用计数这一简单技术来跟踪和回收垃圾

析构函数 __del__ ,__del__在对象销毁的时候被调用,当对象不再被使用时,__del__方法运行

Python类的继承

通过继承创建的新类称为子类派生类,被继承的类称为基类父类超类

继承语法

class 派生类名(基类名)
    ...

如果在继承元组中列了一个以上的类,那么它就被称作"多重继承" 。

语法:

派生类的声明,与他们的父类类似,继承的基类列表跟在类名之后,如下所示:

class SubClassName (ParentClass1[, ParentClass2, ...]):

Python基础重载方法

下表列出了一些通用的功能,你可以在自己的类重写:

序号

方法, 描述 & 简单的调用

1

__init__ ( self [,args...] )

构造函数

简单的调用方法: obj = className(args)

2

__del__( self )

析构方法, 删除一个对象

简单的调用方法 : del obj

3

__repr__( self )

转化为供解释器读取的形式

简单的调用方法 : repr(obj)

4

__str__( self )

用于将值转化为适于人阅读的形式

简单的调用方法 : str(obj)

5

__cmp__ ( self, x )

对象比较

简单的调用方法 : cmp(obj, x)

Python类属性与方法

类的私有属性

__private_attrs:两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问。在类内部的方法中使用时 self.__private_attrs

类的方法

在类的内部,使用 def 关键字可以为类定义一个方法,与一般函数定义不同,类方法必须包含参数 self,且为第一个参数

类的私有方法

__private_method:两个下划线开头,声明该方法为私有方法,不能在类的外部调用。在类的内部调用 self.__private_methods

单下划线、双下划线、头尾双下划线说明:

  • __foo__: 定义的是特殊方法,一般是系统定义名字 ,类似 __init__() 之类的。
  • _foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *
  • __foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。

web 开发

WSGI:Web Server Gateway Interface

Python内置了一个WSGI服务器,这个模块叫wsgiref,它是用纯Python编写的WSGI服务器的参考实现。所谓“参考实现”是指该实现完全符合WSGI标准,但是不考虑任何运行效率,仅供开发和测试使用

由于用Python开发一个Web框架十分容易,所以Python有上百个开源的Web框架

更多关于Python基本知识请查看下面的相关链接

Python 相关文章推荐
Python中列表、字典、元组、集合数据结构整理
Nov 20 Python
在Django中限制已登录用户的访问的方法
Jul 23 Python
Python实现HTTP协议下的文件下载方法总结
Apr 20 Python
python使用正则表达式替换匹配成功的组
Nov 17 Python
python查询mysql,返回json的实例
Mar 26 Python
Django-Rest-Framework 权限管理源码浅析(小结)
Nov 12 Python
在python里协程使用同步锁Lock的实例
Feb 19 Python
PyQt5重写QComboBox的鼠标点击事件方法
Jun 25 Python
Django--权限Permissions的例子
Aug 28 Python
Python 下载及安装详细步骤
Nov 04 Python
Django 设置admin后台表和App(应用)为中文名的操作方法
May 10 Python
协程Python 中实现多任务耗资源最小的方式
Oct 19 Python
Django + Taro 前后端分离项目实现企业微信登录功能
Apr 07 #Python
Python OpenCV实现图像模板匹配详解
Python实现日志实时监测的示例详解
Python使用PyYAML库读写yaml文件的方法
Apr 06 #Python
python+pytest接口自动化之token关联登录的实现
Python图像处理库PIL详细使用说明
Apr 06 #Python
Python可变与不可变数据和深拷贝与浅拷贝
Apr 06 #Python
You might like
咖啡风味 世界咖啡主要分布分布 咖啡的生长要求
2021/03/06 新手入门
PHP 5.0对象模型深度探索之类的静态成员
2008/03/27 PHP
PHP 网络开发详解之远程文件包含漏洞
2010/04/25 PHP
PHP+shell实现多线程的方法
2015/07/01 PHP
JQuery 网站换肤功能实现代码
2009/11/02 Javascript
基于jQuery的烟花效果(运动相关)点击屏幕出烟花
2012/06/14 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
jQuery中多个元素的Hover事件解决方案
2014/06/12 Javascript
js 左右悬浮对联广告特效代码
2014/12/12 Javascript
JavaScript检测实例属性, 原型属性
2015/02/04 Javascript
JavaScript提高性能知识点汇总
2016/01/15 Javascript
JavaScript 函数的执行过程
2016/05/09 Javascript
json对象转为字符串,当做参数传递时加密解密的实现方法
2016/06/29 Javascript
javascript实现简单的on事件绑定
2016/08/23 Javascript
微信小程序实现图片自适应(支持多图)
2017/01/25 Javascript
使用mint-ui开发项目的一些心得(分享)
2017/09/07 Javascript
ant design 日期格式化的实现
2020/10/27 Javascript
Python实现发送email的几种常用方法
2014/08/18 Python
Python实现从百度API获取天气的方法
2015/03/11 Python
python3实现TCP协议的简单服务器和客户端案例(分享)
2017/06/14 Python
Pycharm编辑器技巧之自动导入模块详解
2017/07/18 Python
详解django的serializer序列化model几种方法
2018/10/16 Python
在python中利用GDAL对tif文件进行读写的方法
2018/11/29 Python
python判断一个对象是否可迭代的例子
2019/07/22 Python
关于python导入模块import与常见的模块详解
2019/08/28 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
2020/01/20 Python
python实现同一局域网下传输图片
2020/03/20 Python
Python使用plt.boxplot() 参数绘制箱线图
2020/06/04 Python
中层干部岗位职责
2013/12/18 职场文书
幼儿园消防安全制度
2014/01/26 职场文书
农民工工资发放承诺书
2014/03/31 职场文书
暑期社会实践先进个人主要事迹
2014/05/22 职场文书
2014市国税局对照检查材料思想汇报
2014/09/23 职场文书
教育实习指导教师评语
2014/12/31 职场文书
单位考核鉴定意见
2015/06/05 职场文书
红色故事汇观后感
2015/06/18 职场文书