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实现逆波兰计算表达式实例详解
May 06 Python
Python正则表达式完全指南
May 25 Python
利用numpy实现一、二维数组的拼接简单代码示例
Dec 15 Python
python机器学习理论与实战(四)逻辑回归
Jan 19 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
Jun 11 Python
Python实现制度转换(货币,温度,长度)
Jul 14 Python
python cumsum函数的具体使用
Jul 29 Python
Python使用Pandas库常见操作详解
Jan 16 Python
Tensorflow的梯度异步更新示例
Jan 23 Python
基于python的docx模块处理word和WPS的docx格式文件方式
Feb 13 Python
使用python脚本自动生成K8S-YAML的方法示例
Jul 12 Python
python中spy++的使用超详细教程
Jan 29 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
php5数字型字符串加解密代码
2008/04/24 PHP
详解Yii2 定制表单输入字段的标签和样式
2017/01/04 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
PHP7 foreach() 函数修改
2021/03/09 PHP
javascript同步Import,同步调用外部js的方法
2008/07/08 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
javaScript基础语法介绍
2015/02/28 Javascript
JS设置cookie、读取cookie、删除cookie
2015/04/17 Javascript
JS基于面向对象实现的拖拽库实例
2015/09/24 Javascript
javascript内存分配原理实例分析
2017/04/10 Javascript
mui上拉加载功能实例详解
2017/04/13 Javascript
angular.js + require.js构建模块化单页面应用的方法步骤
2017/07/19 Javascript
Angular Renderer (渲染器)的具体使用
2018/05/03 Javascript
简单说说angular.json文件的使用
2018/10/29 Javascript
超详细小程序定位地图模块全系列开发教学
2020/11/24 Javascript
echarts柱状图背景重叠组合而非并列的实现代码
2020/12/10 Javascript
vue 动态添加的路由页面刷新时失效的原因及解决方案
2021/02/26 Vue.js
[04:28]2014DOTA2国际邀请赛 采访小兔子LGD挺进钥匙体育馆
2014/07/14 DOTA
[40:16]TFT vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
[27:08]完美世界DOTA2联赛PWL S2 SZ vs Rebirth 第二场 11.21
2020/11/23 DOTA
Python的ORM框架SQLAlchemy入门教程
2014/04/28 Python
安装Python的web.py框架并从hello world开始编程
2015/04/25 Python
PyCharm+PySpark远程调试的环境配置的方法
2018/11/29 Python
对Xpath 获取子标签下所有文本的方法详解
2019/01/02 Python
python 实现矩阵上下/左右翻转,转置的示例
2019/01/23 Python
python3.6+django2.0+mysql搭建网站过程详解
2019/07/24 Python
tensorflow 获取所有variable或tensor的name示例
2020/01/04 Python
Python socket服务常用操作代码实例
2020/06/22 Python
Python中logging日志的四个等级和使用
2020/11/17 Python
matplotlib bar()实现百分比堆积柱状图
2021/02/24 Python
Canvas在超级玛丽游戏中的应用详解
2021/02/06 HTML / CSS
美国在线面料商店:Fashion Fabrics Club
2020/01/31 全球购物
Groupon西班牙官方网站:在线优惠券和交易,节省高达70%
2021/03/13 全球购物
秋季运动会通讯稿
2014/01/24 职场文书
Nginx访问日志及错误日志参数说明
2021/03/31 Servers
win11无法添加打印机怎么办? 提示windows无法打开添加打印机的解决办法
2022/04/05 数码科技