python基础:字符串和字典


字符串
  1. 所有标准的序列操作(索引,分片,乘法,in,max(),len(),min())对字符串同样适用。

  1. 字符串格式化:%

  2. 方法:

    Find:在较长的字符串中查找子串,返回子串所在位置的最左端索引。没有则返回-1.

               Title=’mottare envious’

               Title.find(‘aa’)

    Find(str,index)

    Find(str,index,end)

                   Join:用来连接序列中的元素

                            Seq=[1,2,3,4,5]

                            Sep=’+’

                            Seq.join(sep)错误

                            需要被连接的序列元素都必须是字符串。

                   Lower:返回字符串的小写字母版。

                            ‘TsadfaadT’.lower()

                   Replace:返回某字符串的所有匹配项均被替换之后得到的字符串。

                            ‘thisis a test’.replace(‘is’,’eez’)

                   Spilt:用来将字符串分割成序列。

                            ‘1+2+3+4+5’.spilt(‘+’)

                   Strip:返回去除两侧(不包括内部)空格的字符串,也可以去除指定的字符

                                  ada    dais  a   ’.strip()

                            ‘***SPAM * FROM * EVERYONE !!! ***’.strip(‘ *!’)

>>> '*** SPAM * FROM * EVERYONE !!! ***'.strip(' *!')

'SPAM * FROM * EVERYONE'

                            只会去除两侧的字符。

                   Translate:

  1. 字典

    映射,键可以是数字、字符串甚至元组。

    整个字典是由一对大括号括起来,每个键和它的值之间用冒号(:)分隔,项与项之间用逗号(,)分隔。如:

             Phonebook={‘alice’:’10086’,’联通’:’10010’}

    键是唯一的。

  1. 函数:

Dict(),通过其他映射(比如其他字典)或者(键,值)对的序列建立字典。

Items=[(‘name’,’gumby’),(‘age’,43)]

Dict(items)

>>> items=[('name','ahui'),('age',32)]

>>>dict(items)

{'age': 32,'name': 'ahui'}

 

或通过关键字参数来创建字典

>>>d=dict(name='ahui',age=11)

>>> d

{'age': 11,'name': 'ahui'}

  1. 操作

    Len(d)返回d中项的数量

    D[k]返回关联到键值K上的值

    D[k]=v 将值V关联到键K

    Del d[k]删除键为K的项

    K in d 检查d中是否有含有键为K的项,查找的是键;而v in l(l为列表),查找的是值.

     

    X=[]

    X[42]=’ff’错误

    X={}

    X[42]=’ff’正确

                   3.方法

                            Clear:清楚字典中所有的项,无返回值。

                                     D={}

                                     D[‘name’]=’ahui’

                                     D[‘age’]=11

                                     d.clear()

                            copy:返回一个具有相同键值对的新字典(浅复制)

 

                                     >>>x={'name':'admin','machines':['a','b','c']}

>>> y=x.copy()

>>> y['name']='admin111'

>>> y['machines'].remove('b')

>>> y

{'name': 'admin111', 'machines': ['a', 'c']}

>>> x

{'name': 'admin', 'machines': ['a', 'c']}

Deepcopy,深复制

           >>> from copy importdeepcopy

>>> x={'name':'admin','machines':['a','b','c']}

>>> y=deepcopy(x)

>>> y['name']='admin111'

>> y['machines'].remove('b')

>>> y

{'name': 'admin111', 'machines': ['a', 'c']}

>>> x

{'name':'admin', 'machines': ['a', 'b', 'c']}

                            Fromkeys:使用给定的键建立新的字典,每个键都对应一个默认的值None.也可          以自己提供默认值

                                     >>>{}.fromkeys(['name','age'])

{'age': None, 'name': None}

Get:访问字典项的方法。访问不存在的键时,没有引发异常,而是得到None.

           D={}

           D[‘aa’]异常

           d.get(‘aa’)无异常,None

has_key:检测字典中是否含有特定的键

           >>> d={}

>>> d.has_key('k')

False

Itemsiteritmes:

itmes将字典所有的项以列表方式返回,列表中的每一项都表示为键值对的形式。

Iterimtes:返回一个迭代器对象,而不是一个列表。使用这个会更加高效。

>>> d={'name':'tang','age':15}

>>> d.items()

[('age', 15), ('name', 'tang')]

>>> d.iteritems()

<dictionary-itemiterator object at 0x039D3AB0>

                            Keysiterkeys

                                     Key方法返回字典中的键,以列表形式返回

                                     Iterkeys返回针对键的迭代器

                            Pop:用来获得对应于给定键的值,然后将这个键值对从字典中移除

                                     >>>d={'x':1,'y':2}

>>> d.pop('x')

1

>>> d

{'y': 2}

>>> 

                            Popitem:类似于list.pop,后者会弹出列表的最后一个元素;但popitem弹出随                                 机项。

                                     >>>d.popitem()

('y', 2)

                            Setdefault:

                            Update:可以利用一个字典项更新另外一个字典

                                     >>>d={'name':'tang','age':11}

>>> x={'age':33}

>>> d.update(x)

>>> d

{'age': 33, 'name': 'tang'}

                            提供的字典项会被添加到旧的字段中,有相同的建则覆盖。

                            Valuesitervalues

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值