Python知识点汇总

Python是一种解释型,面向对象,动态数据类型的高级语言

基础语法

单行注释 #

多行注释 '''...''',"""..."""

缩进 同个代码块的语句必须包含相同的缩进空格数

多行语句 \,[] {} ()多行不需要反斜杠

input()等待输入 ,print()打印

import/from ... import导入模块

变量

  • 变量不需要申明,在使用前必须赋值,赋值后变量才会创建

  • 变量没有类型,“类型”是变量所指内存中对象的类型

  • 多个变量赋值
    a = b = 1 或 a, b = 1, 2

运算符

算术运算符

** 幂,% 取余,// 取整除

逻辑运算符

and,or,not

标准数据类型

不可变数据:Number(数字),String(字符串),List(列表)

可变数据:Tuple(元组),Set(集合),Dictionary(字典)

数字

int/bool/float/complex

字符串

单双引号完全相同,三引号可以指定多行字符串

列表

截取拼接

l[-2]
l[1:]
l = [1,2,3]
l.append()
l.count()
l.extend()
l.reverse()
l.clear()
l.copy()

max(l)/min(l)

元组

  • 使用小括号,元组数据不能修改

  • 除了修改元素,列表其他功能元组都有

字典

  • 键必须唯一,值不必

  • 值可取任何数据类型,键必须不可变(数字,字符串,元组)

  • 创建空字典用dict()或者{}

  • 访问不存在的key会报错

  • del() 删除,str(dict)以字符串表示字典

d = {'Name':'Tom', 'Age':10}
d.clear()
d.items()
d.keys()   # 返回迭代器,list()转换为列表
d.values()

集合

  • 无序,不重复

  • 使用{}或者set()创建集合,创建空集合用set(){}默认创建空字典

s = {1,2,3}
s.add()       # 添加元素是数字,字符串,元组或者布尔类型,不能是列表,字典,集合
s.update()    # 添加元素可以是列表,字典
s.remove()    # 不存在会报错
s.discard()   # 不存在不会报错
s.clear()
s.pop()          # 随机移除
s.union()        # 返回并集 
s.difference()   # 返回差集

控制语句

if xxx:
    xxx
elif xxx:
    xxx
else:
    xxx
while xxx:
    xxx
for i in range(5):
    xxx

函数

  • 不带return相当返回None
  • 不可变类型,类似c++的值传递
  • 可变类型,类型c++的引用传递
def 函数名(参数列表):
    函数体

参数类型

  • 必须参数

  • 关键字参数

  • 默认参数

  • 不定长参数

def test(*vartuple)     # 元组形式导入
def test(**vardict)     # 字典形式导入

模块

搜索路径,sys.path,空串代表当前目录

面向对象

构造函数__init__

类变量/成员变量,成员变量比类变量优先级更高

pass,不想在类里添加任何属性或方法,使用pass

super(),不用使用父类的名称,自动从父类继承方法和属性

super(Child,c).XXX,用子类对象调用父类已被覆盖的方法

错误和异常

try/except

ZeroDivisionError, NameError, TypeError

try:
except:
else:
finally:
  • else子句在try子句没有发生任何异常时执行
  • finally无论是否发生异常都会执行
  • raise抛出异常

自定义异常继承自Exception类

迭代器

可以记住遍历位置

迭代器对象从集合的第一个元素开始访问,直到所有元素都被访问结束,只能前进,不能后退

iter()/next()

字符串,列表,元组都可以创建迭代器

list = [1, 2, 3, 4]
it = iter(list)
for x in it:
    print()
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容