python基础知识

第一章:基础知识
<tr><td><td><tr>repr 以合法的python表达式的形式来表示值
str 将值转换成合理形式的字符串

input 认为你输入的为合法的字符串(输入必须带引号)
raw_input 把所有的输入当做原始数据 (不用带引号)

长字符串 三引号''' '''
原始字符串 以r开头 r"I'm Sunwu"
Unicode字符串 以u开头 u"I'm your God"



第二章:列表和元祖
所有序列都可进行 索引,分片, 加, 乘
1.索引
正数下标从零开始 倒数 下标从-1开始
2.分片
使用索引来分片
name=[1,2,3,4,5] name[1:3] name[1:] name [-3:-1]
第三个表示补偿 name[1:10:2] 表示取 1, 3, 5, 7,9下标所在的字符
3.序列相加
序列相加 结果为两个拼接起来的序列
4.乘
把原来的序列重复n遍

成员资格:
关键字 in

长度,最小值,最大值
内建函数:len, min, max

删除元素 del name[2]
列表方法:
1.append 在列表末尾追加新的对象
2.count 用于统计某个元素在列表中出现的次数
3.extend 可以在列表的末尾一次性追加另一个序列中的多个值
4.index 用于从列表中所以第一个匹配的项
5.insert  用于将对象插入到列表中
6.pop 移除列表中的一个元素 默认是最后一个
7.remove 移除列表中某个值的第一个匹配项
8.reverse 将表中的所有元素反向存放
9.sort 用于对列表进行排序

元祖:
1.tuple 与list函数基本一致 以一个序列作为参数并把它转换为元祖


第三章:字符串
1.基本字符串
2.字符串格式化:
1>. %字符 标记转换说明符开始
2>. 转换标志 - 标志左对齐; + 表示在转换值之前要加上正负号; 空白字符 表示正数之前保留空格;
0表示转换值若位数不够用0填充;
3>. 最小字段宽度 如果是*,那么宽度会从值元祖中读取
4>. 点 后跟精度值 如果转换的是实数,表示小数点后的位数;如果是字符串,表示最大字段宽度;如果
是*,精度从元祖中读取;
5>. 转换类型: d,i 带符号的十进制; o 不带符号的八进制; u不带符号的十进制;x不带符号的十六进制;
e科学计数法表示的浮点数;f十进制浮点数; c单字符;r用repr转换的字符;s 用str转换的字符;

3.字符串方法
1>.find 在一个长字符串中查找子字符串 没有找到返回-1;
2>. join 他是split方法的逆方法,用来在队列中添加元素
3>. lower 返回字符串的小写字母版
4>. replace 返回某字符串的所有匹配项均被替换以后的版本
5>. split join的逆方法 用来将字符串分割成序列
6>. strip 返回去除两侧空格的字符串
7>. translate 和replace方法一样,不同的是只处理单个字符


第四章: 字典
1.创建和使用字典
1>. phonebook={'hello':'1234', 'sunwu':'2345', 'beth':'5432'}
2>. dict 通过其他映射(其他字典或者(键,值)这样的映射)来创建新的字典
2.字典的基本操作
1>. len 返回字典的键值对的数目
2>. del phonebook[hello] 删除键为hello的项
3>. 自动添加(在不使用append方法或其他类似操作的情况下)不能将值关联到列表之外的范围上
4>. 成员资格: k in d 查找的是键 而不是值
3.字典方法
1>. clear 清除字典中的所有项
2>. copy  返回一个具有相同键值对的新字典(这个方法实现的是浅复制:当修改复制后的字典的值时不影响原始字典;
但是在修改了复制后字典中的对象时则会影响原始字典),应该使用深度复制 deepcopy
3>. fromkeys 使用给定的键建立新的字典,每个键默认对应值为None
4>. get 获取字典项 没找到时返回None
5>. has_key 检查字典中是否有给出的键
6>. items 和 iteritems   items将所有字典项以列表形式返回; iteritems 返回一个迭代器对象 而不是列表
7>. keys 和 iterkeys keys将字典中的键以列表形式返回,而 iterkeys则返回针对键的迭代器
8>. pop 用来获得对应于给定键的值,然后将这个键值对从字典中移除
9>. popitem 弹出字典中随机的项
10>. setdefault 在某种程度上类似于get 只是在不含有给定键的情况下设定相应的值
11>. update 利用一个字典项更新另外一个字典
12>. values 和 itervalues  values以列表的形式返回字典中的值, itervalues返回值得迭代器

第五章:条件,循环和其他语
1.赋值相关
1>. 赋值魔法(和lua有异曲同工之妙) a, b , c = 1,2,3  a, b = b, a
2>. 链式赋值  a = b = 4
3>. 增量赋值 x += 1 x *= 1 x %= 1
2.语句块
缩进
3.条件和条件语句
if else elif
1>. 比较运算符
2>. == 相等运算符
3>. is 同一性运算符 判定的是是否同一个 而不是 是否相等
4.断言 assert
5.循环 for  while
for k in d.items
跳出 break;
6. 三人行
1>. pass 不能有空语句块  
2>. exec 执行一个字符串
3>. eval 用于字符串求值


第六章:抽象
1.函数
1>. 定义  def func(para) :
2>. 给函数写文档 给.__doc__ 赋值
2.关键字参数和默认值
1>. def func(para="hello"): #为函数设置默认参数
2>. func(para="haha");     #这类使用参数名提供的参数叫做关键字参数
3.收集参数
1>. 用户可以给函数提供任意多个参数,只需在定义时为参数价格*号: def func(*para):
2>. 如果要提供关键字参数 则需要加两个*号: def func(**para):
4.新函数
1>. map(func, seq[seq[...]]) 对序列中的每个元素应用函数
2>. filter(func, sep) 返回其函数为真的元素的列表
3>. sum(seq) 返回seq中所有元素的和
4>. apply(func[.args[.kwargs]])


第七章: 类
1.特性
多态,封装,集成
2.定义:
1>. 关键字 class   class CLASS:
2>. 函数参数(第一个为self,表示当前实例)
3>. 私有函数 函数名用 __funcname__ 但并非真正的私有 只是使用时改了名字 _funcname_
3.制定超类(父类)
1>. class Filter:   定义父类
class SPAMFilter(Filter):  SPAMFilter是Filter的子类
2>. 查看是否是一个类的子类  issubclass(SPAMFilter, Filter) 返回True
3>. 查看已知类的父类  查看__bases__的值
4>. 也可以定义多个父类 class CALCULATE:
class CAFilter(Filter, CALCULATE):
4.常用函数
1>. callable(object) 确定对象是否可调用
2>. getattr(object, name) 确定特性的值,可选择提供默认值
3>. hasattr(object, name) 确定对象是否有给定的特性
4>. isinstance(object, class) 确定对象是否是类的实例
5>. random.choice(seq) 从非空序列中随机选取元素
6>. setattr(object, name, value) 设定对象的给定特性为value
7>. type(object) 返回对象的类型


第九章: 魔性方法,属性和迭代器
1.类的构造函数
__init__属性 当一个对象被创建以后,会立即调用这个方法;
2.成员访问
1>. __len__(self): 返回集合中所含项目的数量
2>. __getitem__(self, key): 返回与所给键对应的值
3>. __setitem__(self, key, value): 按一定的方式存储和key相关的value
4>. __delitem__(self, key): 这个方法在对一部分对象使用del语句时被调用
3.属性
1>. property函数   size=Property(getSize, setSize) 该函数创建一个属性,属性包括函数中的所有值
2>. 静态方法 staticmethod 
3>. 类成员方法 classmethod






















































  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值