python 基本知识学习
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 基本知识学习相关的知识,希望对你有一定的参考价值。
一、基本概念和使用
1、数据结构: 通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合,这些数据元素
可能是数字或者字符,甚至可以是其他数据结构。
2、序列: 最基本的数据结构
Python 包含6种内建的序列,最常用的两种类型是: 列表和元组,其它还有 字符串、Unicode字
符串、buffer对象和 xrange对象
3、列表和元组: 列表可以修改,元组则不能
4、容器: Python中还有一种名为容器的数据结构。容器基本上包含了其他对象的任意对象。序列
(例如 列表和元组) 和 映射(例如字典) 是两类主要的容器,集合(set)既不是序列也不是映射
的容器类型
5、通用序列操作: 包括 索引、分片、加、乘 以及检查某个元素是否属于序列的成员(成员资
格),除外还有 计算序列长度、找出最大元素和最小元素的内建函数
分片: 用法同substr ,只是多了一个步长的参数
成员资格: in 用法同 strpos 和 in_array ,返回值为bool
长度,最大值和最小值:内建函数 len,min和max
列表方法: append,count ,extend ,index , insert ,pop ,remove ,reverse , cmp
sort(sorted) 函数如果操作没有相关值的话,会报错 ValueError
6、字符串操作:
字符串格式化类型:
字符串方法:
find (同strpos 没找到返回-1), rfind ,index ,rindex,count,startwith,endswith
join ,lower,islower,capitalize,swapcase,title,istitle,upper,isupper
replace,split(join 的逆方法),strip(去空格),translate,maketrans
7、字典(键/值对):
字典由多个键及其对应的值构成的对组成(我们也把键/值对称为项)。
eg: phonebook = {‘Alice‘:‘12345‘ . ‘Beath‘: ‘22223‘ , ‘Cecil‘: ‘3224‘}
方法: dict , clear , copy , fromkeys , get
8、条件、循环和其他语句
print 和 import
对于 open 函数 ,可以像下面使用:
from module1 import open as open1
eg: from math import sqrt as foobar , foobar(4) 得到2
赋值方式 : 序列解包、链式赋值、增量赋值
false值: False None 0 "" () [] {}
boo 函数 的值为 True 或者 False
if : elif : else:
比较运算符 , 相等运算符,同一运算符(is) , 成员资格运算符(in),布尔运算符(and or not)
断言
for 循环:
3个语句: pass del exec
9、抽象
10、收集参数
收集参数 和 参数收集的逆过程
参数中带* 星号 只有在 定义函数(允许使用不定数目的参数)或者调用(“分割”字典或者序列)时才用
11、反转过程
12、函数式编程
map、filter、reduce (python3.0 移至functools 模块中)
13、更加抽象
多态、封装 和 继承
多态: repr
私有特性:python 并不直接支持私有方式,而要靠程序员自己把握在外部进行特性修改的时机。为了让方法或者特性变为私有(从外部无法访问),只要在它的名字前加上双下划线即可
def __inaccessible(self):
print ‘Inaccessible‘
继承:
class Filter:
def init(self):
print ‘test‘
class SPAMFilter(Filter): #SPAMFilter 是 Filter 的子类
def init(self): #重写Filter 超类中的 init 方法
print ‘spamtest‘
检查继承:
issubclass(SPAMFilter,Filter) 返回 true or false
SPAMFilter.__bases__ 查询所有的基类 ,没有返回()
isinstance :是否是实例
s = SPAMFilter()
isinstance(s.SPAMFilter) 返回 true
isinstance(s.Filter) 返回 true
isinstance(s.str) 返回 false
__class__ : 一个对象属于哪个类 , s.__class__ 返回信息
多重继承(多个超类): class C(A,B)
接口: hasattr(A,‘run‘) 检查A类中是否有run 的特性,有的话true ,没有则false
setattr(A.name,‘Lilei‘) 设置A类的name 特性为 Lilei ,同样还有 getattr
14、异常
try except else finally
文中的截图来自 《python 基础教程(第二版)》
以上是关于python 基本知识学习的主要内容,如果未能解决你的问题,请参考以下文章