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 相关文章推荐
Python3基础之list列表实例解析
Aug 13 Python
Python fileinput模块使用实例
Jun 03 Python
Python黑魔法Descriptor描述符的实例解析
Jun 02 Python
Python机器学习logistic回归代码解析
Jan 17 Python
python使用KNN算法手写体识别
Feb 01 Python
Python处理CSV与List的转换方法
Apr 19 Python
PyQt5根据控件Id获取控件对象的方法
Jun 25 Python
查看已安装tensorflow版本的方法示例
Apr 19 Python
哪些是python中web开发框架
Jun 17 Python
Python爬虫使用bs4方法实现数据解析
Aug 25 Python
Python创建简单的神经网络实例讲解
Jan 04 Python
教你怎么用python selenium实现自动化测试
May 27 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
php将access数据库转换到mysql数据库的方法
2014/12/24 PHP
利用PHP计算有多少小于当前数字的数字方法示例
2020/08/26 PHP
使用Javascript和DOM Interfaces来处理HTML
2006/10/09 Javascript
JS在IE和FF下attachEvent,addEventListener学习笔记
2009/11/26 Javascript
ExtJs中简单的登录界面制作方法
2010/08/19 Javascript
理解JavaScript中的对象 推荐
2011/01/09 Javascript
JavaScript实现生成GUID(全局统一标识符)
2014/09/05 Javascript
javascript+HTML5自定义元素播放焦点图动画
2016/02/21 Javascript
JavaScript地理位置信息API
2016/06/11 Javascript
JavaScript数据类型和变量_动力节点Java学院整理
2017/06/26 Javascript
Angular4表单验证代码详解
2017/09/03 Javascript
Web开发使用Angular实现用户密码强度判别的方法
2017/09/27 Javascript
js中apply和Math.max()函数的问题及区别介绍
2018/03/27 Javascript
中高级前端必须了解的JS中的内存管理(推荐)
2019/07/04 Javascript
浅谈Vue项目骨架屏注入实践
2019/08/05 Javascript
VueQuillEditor富文本上传图片(非base64)
2020/06/03 Javascript
Vue3新特性之在Composition API中使用CSS Modules
2020/07/13 Javascript
javascript实现时间日期的格式化的方法汇总
2020/08/06 Javascript
vue 如何使用递归组件
2020/10/23 Javascript
利用一个简单的例子窥探CPython内核的运行机制
2015/03/30 Python
python使用matplotlib绘制折线图教程
2017/02/08 Python
Python 登录网站详解及实例
2017/04/11 Python
Python实现输出某区间范围内全部素数的方法
2018/05/02 Python
Python发送手机动态验证码代码实例
2020/02/28 Python
快速解决jupyter notebook启动需要密码的问题
2020/04/21 Python
Django如何使用jwt获取用户信息
2020/04/21 Python
应届毕业生个人求职自荐信
2014/01/06 职场文书
门诊手术室工作制度
2014/01/30 职场文书
教师党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
2015仓库保管员年终工作总结
2015/05/13 职场文书
2016年社区国庆节活动总结
2016/04/01 职场文书
创业计划书之服装
2019/10/07 职场文书
Nginx+Tomcat实现负载均衡、动静分离的原理解析
2021/03/31 Servers
python opencv人脸识别考勤系统的完整源码
2021/04/26 Python
Python pygame实现中国象棋单机版源码
2021/06/20 Python
centos7安装mysql5.7经验记录
2022/05/02 Servers