Python复习

Python复习.md

Python复习

Python基础

  • Python采用空格来控制程序的逻辑结构
  • Python注释有:# '''''' """"""
  • Python管理包的命令是pip
    • pip list
    • pip install
    • pip uninstall
  • 删除对象:del

Python输入输出

  • 输入:input()
  • 输出:print()

Python导入模块的方法

  • import math
  • import math as m
  • from math import sin, cos
  • from math import *

Python支持的数据类型

  • 数字型:int float complex

  • 字符串:str 'str' [R/r]"str"

  • 字节串:bytes b'bytes'

  • 列表:list [1,2,3]

  • 字典:dict {'key':'value'}

  • 元组:tuple (1,2,3)

  • 集合:set {1,2,3}

  • 布尔型:bool True False

  • 空类型:NoneType None

  • 检测数据类型的函数

    • type(变量名)
    • isinstance(变量名/值, 数据类型)
  • 检测变量的内存地址 id(变量名)

Python变量命名规则

  • 变量名必须以字母或下划线开头,但以下划线开头的变量在Python中有特殊含义;
  • 变量名中不能有空格以及标点符号(括号、引号、逗号、斜线、反斜线、冒号、句号、问号等等);
  • 不能使用关键字作变量名,可以导入keyword模块后使用print(keyword.kwlist)查看所有Python关键字;
  • 不建议使用系统内置的模块名、类型名或函数名以及已导入的模块名及其成员名作变量名,这将会改变其类型和含义,可以通过dir(builtins)查看所有内置模块、类型和函数;
  • 变量名对英文字母的大小写敏感,例如student和Student是不同的变量。

Python转义字符

  • \b:退格 \f:换页 \n:换行 \r:回车 \t:水平制表符 \v:垂直制表符
  • \\:\ \':' \"":"

Python运算符和表达式

  • +,-,*,/
  • //:求整商
  • %:求余数
  • **:幂运算
  • <,>,>=,<=,==,!=
  • and or not
  • in is

几个例子

  • [1,2,3] + [4,5,6] = [1,2,3,4,5,6]
  • 'abc' + '123'*2 = 'abc123123'
  • True + 6 = 7
  • False + 6 = 6
  • 1<3<5 = True
  • 1 and 2 = 2
  • 1 or 2 = 1
  • 1 and True = True
  • 1 or True = 1
  • 1 and False = False
  • 1 or False = 1

Python序列结构

  • list、tuple和set可以相互转换
  • tuple和set一经定义不可修改
  • list和tuple通过下标访问,list可通过下标赋值下表为负从后向前
  • list切片:[startendsetp]
  • list元素删除:del remove pop clear
  • 排序:sort
  • dict通过key访问,删除用del
  • dict的几个函数:keys() values() items()
  • set删除用discard、remove和pop

Python程序控制结构

  • if...elif...else 选择结构
  • while...[else] 循环结构
  • for 循环结构
  • break,continue

Python函数

定义方法

def 函数名([参数列表]): '''注释''' 函数体 [return val,val2...]
  • 函数形参不需要声明类型,也不需要指定函数返回值类型
  • 即使该函数不需要接收任何参数,也必须保留一对空的圆括号
  • 括号后面的冒号必不可少
  • 函数体相对于def关键字必须保持一定的空格缩进
  • Python允许嵌套定义函数
  • Python允许返回多个值

函数参数

  • def demo(x,y=1,*args,**params)
  • 默认值参数必须放置于无默认值参数之后
  • 一个函数定义中只能有一个*args和**params
  • 可变长度参数*args采用元组存储参数,**params采用字典存储参数
  • Python函数调用时可以通过加上参数名而无需按照顺序写参数

变量作用域

  • 全局变量可以通过关键字global来定义。这分为两种情况:
    • 一个变量已在函数外定义,如果在函数内需要为这个变量赋值,并要将这个赋值结果反映到函数外,可以在函数内使用global将其声明为全局变量。

    • 如果一个变量在函数外没有定义,在函数内部也可以直接将一个变量定义为全局变量,该函数执行后,将增加一个新的全局变量。

Python面向对象编程

类的定义和使用

class People(object,object1...): #定义一个类,派生自object类,可以多继承 __total = 0 # 构造函数 def __init__(self, name, age = 21): self.name = name # 公有属性 self.__age = age # 私有属性 def infor(self): #定义成员方法 print("This is a People") @staticMethod # 静态方法 def staticDemo(): People.__total @classMethod # 类方法 def ClassDemo(cls): cls.__total @abc.abstractmethod #抽象方法,必须在子类进行实现 def f3(self): raise Exception('You musr reimplement this method.') @property def value(self): #只读属性,无法修改和删除 return self.__value '''可读可写可删除''' def __get(self): return self.__value def __set(self, v): self.__value = v def __del(self): del self.__value value = property(__get, __set, __del) p= People('ZS', 21) #实例化对象 p.infor() #调用对象的成员方法

Python字符串

  • find()、rfind()、index()、rindex()、count()
  • split()、rsplit()、partition()、rpartition()
  • join()
  • lower()、upper()、capitalize()、title()、swapcase()
  • replace()、maketrans()、translate()
  • strip()、rstrip()、lstrip()

Python文件

f = open('文件路径', '打开模式') lines = f.readlines()/read()/readline() # 读取 f.write()/writelines() # 写入 f.close() # 关闭文件

文件打开模式

  • r 读模式(默认模式,可省略),如果文件不存在则抛出异常
  • w 写模式,如果文件已存在,先清空原有内容
  • x 写模式,创建新文件,如果文件已存在则抛出异常
  • a 追加模式,不覆盖文件中原有内容
  • b 二进制模式(可与其他模式组合使用)
  • t 文本模式(默认模式,可省略)
  • + 读、写模式(可与其他模式组合使用)
阅读剩余
THE END