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写的图片蜘蛛人代码
Aug 27 Python
python定时器使用示例分享
Feb 16 Python
Python实现TCP/IP协议下的端口转发及重定向示例
Jun 14 Python
Python处理JSON数据并生成条形图
Aug 05 Python
Python查询IP地址归属完整代码
Jun 21 Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
Jan 24 Python
python验证码识别实例代码
Feb 03 Python
python中如何实现将数据分成训练集与测试集的方法
Sep 13 Python
python清空命令行方式
Jan 13 Python
AUC计算方法与Python实现代码
Feb 28 Python
python GUI库图形界面开发之PyQt5布局控件QVBoxLayout详细使用方法与实例
Mar 06 Python
Python3创建Django项目的几种方法(3种)
Jun 03 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
《魔兽争霸3:重制版》翻车了?你想要的我们都没有
2019/11/07 魔兽争霸
用函数读出数据表内容放入二维数组
2006/10/09 PHP
mysql,mysqli,PDO的各自不同介绍
2012/09/19 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
PHP根据key删除数组中指定的元素
2019/02/28 PHP
laravel5.1框架基础之Blade模板继承简单使用方法分析
2019/09/05 PHP
Mootools 1.2教程 滚动条(Slider)
2009/09/15 Javascript
Javascript图像处理思路及实现代码
2012/12/25 Javascript
JS继承--原型链继承和类式继承
2013/04/08 Javascript
当前页禁止复制粘贴截屏代码小集
2013/07/24 Javascript
Javascript 多浏览器兼容总结(实战经验)
2013/10/30 Javascript
wap浏览自动跳转到wap页面的js代码
2014/05/17 Javascript
Javascript中的五种数据类型详解
2014/12/26 Javascript
jQuery validate验证插件使用详解
2016/05/11 Javascript
js阻止浏览器默认行为触发的通用方法(推荐)
2016/05/15 Javascript
jQuery实现移动端手机商城购物车功能
2016/09/24 Javascript
用vue快速开发app的脚手架工具
2018/06/11 Javascript
微信小程序地图导航功能实现完整源代码附效果图(推荐)
2019/04/28 Javascript
微信小程序开发(一):服务器获取数据列表渲染操作示例
2020/06/01 Javascript
python 开发的三种运行模式详细介绍
2017/01/18 Python
Django rest framework基本介绍与代码示例
2018/01/26 Python
python实现简易通讯录修改版
2018/03/13 Python
基于python 二维数组及画图的实例详解
2018/04/03 Python
解决Python中list里的中文输出到html模板里的问题
2018/12/17 Python
Pycharm如何打断点的方法步骤
2019/06/13 Python
Python生命游戏实现原理及过程解析(附源代码)
2019/08/01 Python
使用tensorflow DataSet实现高效加载变长文本输入
2020/01/20 Python
python输出第n个默尼森数的实现示例
2020/03/08 Python
html5 worker 实例(一) 为什么测试不到效果
2013/06/24 HTML / CSS
Sandro Paris美国官网:典雅别致的法国时尚服饰品牌
2017/12/26 全球购物
员工工作表扬信范文
2014/01/13 职场文书
人民调解员先进事迹材料
2014/05/08 职场文书
教学改革问题查摆整改措施
2014/09/27 职场文书
企业年会祝酒词
2015/08/11 职场文书
2016学校元旦晚会经典开场白台词
2015/12/03 职场文书
Python写情书? 10行代码展示如何把情书写在她的照片里
2022/04/21 Python