字符串(str):
在python的世界里一切皆是对象,对象的定义是什么? 《深入理解Python》给出的解释是凡是能够赋值给变量或者作为参数进行传递的,都称之为对象。
注意:所有对象都实现了__str__方法,即任何对象都能利用str(a)方式获得它的字符串形式,例如str(None) == 'None' 。应用场景之一:函数针对不同的输入返回不同的对象,函数返回后,调用对象的哪个方法就成为了难题。解决办法之一就是先判断对象的字符串形式,根据字符串中的关键字判断它的对象的类型,从而调用合适的方法。
定义:a = “123” 或者 a=‘123’ 或者 “”“123”“” 或者 ‘’‘123’‘’
搜索:下标法和index
切片:a[1:3] 与元组和队列相似。
字符串连接:+ 、+=方法自然不必说,另一个有用的方法是join
>>> a="\n".join(["1","2"]) //join是将一个序列(包括列表、元组和字符串)连接了起来,并以\n作为分隔符。
>>> print a
1
2
字符串分隔:split 与 join方法相呼应,它将字符串分隔为一个字符串列表。
>>> b=a.split()
>>> b
['1', '2', '3']
字符串替换:比如分隔符的替换,a.replace("\n", "L"),a.replace("abc", "12")
字符串特色方法:判断是否是数字isdigit、是否是字母isalpha、是否是大写isupper、是否是空白字符等;
注意:“\tabc” 字符串带着转义的功能,一般情况下使用没问题。但是在正则表达式中,一般我们并不希望是转义字符串,那么r"\tabc" 即可.
>>> a="\\t123"
>>> b=r"\t123"
>>> a==b ==》两者等价
True
格式化字符串: 字符串格式化使用的语法和C语言的sprintf一致, ”%s=%s “,(k, v) 后面跟着的是一个元组, “%s is you”, (k,) 这是当元组只有
一个元素的表示方法。 使用它的一个理由是“3” 和 2如何连接在一起? “3” + 2 会引发异常,因为Python是强类型语言,它不会主动去进行类型转换的。
另外一种方法,"%s%d", ("3", 2)
字典(Dictionary):
定义: var= {'a': 1, 'b': 2}. 注意, key是具有不可变属性的对象,key和value的对应关系是:一个key对应一个value,一个value可以对应多个key。
增加:var['x'] = 'y'
删除:del var['x'] 删除字典中的一个元素, var.clear()清除所有元素
修改:var['a'] = "num"
索引:var['a'] == 1
items : D.items() -> list of D's (key, value) pairs, as 2-tuples .
keys : D.keys() -> list of D's keys
values : D.values() -> list of D's values . 因为是列表,不怕有重复的元素。
同时还有:iterkeys、itervalues、iteritems的方法。
集合(set) : 它的初始化方式特别,var = set([1,2,3,4])。 里面用的是列表的中括号. 可以向集合Set中添加元素,对元素的要求也是:不可变对象.
它一般用的较少,就不再仔细分析了!!
总结:以上列表、元组、字符串、dict、set类型的对象都有自己的成员函数,调用方法:var.xxx().
阅读(432) | 评论(0) | 转发(0) |