python基础学习(4)

来源:互联网 发布:诱导源码 编辑:程序博客网 时间:2024/06/07 22:47

非常感谢指出错误学习!
21. 关于不可变对象很重要的一点就是dictionary(字典)中的key(或者set元素)必须是不可变元素

22. 函数可根据需要使用任意数量的默认参数,但带默认值的参数不能位于不带默认参数的前面,并且有关默认参数的一个要点就是,只在第一次调用函数的时候给默认参数赋值,在其后再次调用的时候只是重新引用,而并非重新创建。

>>> def f( a , l = [] ) :         l.append(a)        print(l)>>> f(1)[1]>>> f(2)[1, 2]

23. 关键字参数,在python中使用关键子参数可以灵活的使用函数,在函数的参数中使用默认值,之后的函数调用的时候在调用函数时候在函数的参数对关键字参数进行更改便可以对函数中关键字惊醒替换,并且关键字参数的顺序无所谓。

24. 模块,是一系列相关函数和变量。模块与常规的python程序之间唯一的差别是用途不同:模块是一个由函数组成的工具箱,用于编写其他的程序。因此模块通常没有main()函数,要使用模块,导入模块即可(在编写模块的时候最好同时写好注释)

25. 字符串的负数索引要注意的是 -1代表字符串末位的字符,同时序标从右向左减小

26. 每个字符都有对应的字符编码,可是使用ord( ) 函数进行查看

>>>ord(‘a’)97

27. 字符串切片在python中有很便利的方法,会将字符串转化为列表,所以使用列表进行获取你所需要的字符串
这里写图片描述这里写图片描述
可以看到对于字符串处理可以具有3个参数,s[begin : end : step] 代表起始索引,到终止索引减一,每隔step获取一个字符,默认为1,负数代表逆序。
如果省略切片起始索引,默认为0,即第一个字符的索引;如果省略终止索引,则将提取到字符串结束。
这里写图片描述可以看到,在前标大于后标时,返回的是空,默认负数截取的终止下标为-1,如果是0的话,则返回空
Python中存在许多标准字符串函数,用于处理字符串,其中搜索函数find从左至右查找,rfind函数从右向左查找,若没找到则返回 -1 ,找到则返回所查找字符串在原字符串中起始位置(右查找也是返回正的索引,即从左向右的索引)
有趣的是,当字符串中含有相同多个字符串时,左右查找会产生不同。
这里写图片描述可以看到,左右查找的’e’不是一个e
同样,index函数与find函数类似,但是,在没有查到所需要的字符串,则返回Value Error异常,rindex与rfind函数类似,从右向左搜索

28. 字符串函数format功能十分强大。
这里写图片描述
这里写图片描述
所以很明显的看到,format匹配时,相当于将关键字和匹配内容建立了一个字典,关键字顺序无所谓,但是,当使用索引作为替换时,其参数顺序需要匹配。

29. 剥除函数,lstrip左剥除,rstrip右剥除用于剥除不需要的字符串,默认为空白字符
这里写图片描述 这里写图片描述
可以看出,在剥除时,如果参数字符串连续,即 _-‘ 可以看到只会剥除完全匹配的字符串,当参数字符串中使用了空格,则会逐个匹配所要剥除的字符 ‘_ - ‘ 剥除了左右的字符和空格。

30. 拆分函数,partition函数和rpartition函数,将字符串按照指定内容拆分,返回为一个元组,(前部,拆分内容,后部)
Split函数则将按照指定内容对字符串进行分割,返回的是分割后的字符串列表

31. 替换函数可以包含replace()函数,s.replace(old,new)直接将字符串s中的old替换为new
还可以通过创建转换列表通过s.maketrans(old,new)创建一个转换表,用于将old中的字符使用new中相应位置的字符代替,后使用s.translate(table)table便是前面转换表的名称,便可以将s字符串中对应的字符按照字符表替换。
s.join()可以灵活的将函数参数列表中的字符使用s进行拼接。
这里写图片描述这里写图片描述
这里写图片描述
这里写图片描述
可以看到,join函数在对于参数是一个字符串时,将其作为列表处理,而多个字符串时,则报错,此时应将多个字符串构建为一个列表。
在使用转换列表时,构建转换列表的字符串没有要求,即 ‘ ‘.maketrans()和’s’.maketrans()具有相同功能。
可以方便的使用join函数实现换行输出,例如:
这里写图片描述

原创粉丝点击