Heim >Backend-Entwicklung >Python-Tutorial >全面了解python字符串和字典
很多序列的方法字符串同样适用,
但是,字符串是不可变的,所以一些试图改变字符串的方法是不可用的
1 字符串格式化
1)用元组或者字典格式化字符串
format = "hello,%s.s% enough for you?"
values = ('world','Hot')
format % values
跟C格式化类似
2)模板字符串
string模块提供了模板字符串来格式化字符串
from string import Template
s = Template(x,gloriousx,gloriousx!)
s.substitute(x = 'slurm')
将x用slurm替换
一些详细的技巧用法略
格式化转换类型,字段宽度精度,符号位,对齐,填充等参加一些手册
2 字符串方法
1)find
查找子字符串,返回最左端索引
s.find(subs)
2)join
连接字符串
3)lower
4)replace
所有匹配项均被替代
5)split
分割字符串 分隔符不包含
.........
..........
--------------------------------------------------
字典中的值没有特定的顺序
key可以是数字,字符串,元组(必须是不可变类型,不能是列表)
phonebook = {'jmz':'5153','usr1':'1234','usr2':'4321'}
1) dict函数
通过其他映射或者键值序列来建立字典:
用包含2个元组的列表来建立字典:
items = [('key1','value1'),('key2','value2'),('key3','value3')]
d = dict(items)
{'key1':'value1','key2':'value2','key3':'value3'} 可能不是这个顺序
通过关键字参数来创建字典:
d = dict(key1 = 'value1',key2 = 'value2',key3 = 'value3')
也将得到上述结果
dict函数不是真正的函数,它是个类型,类似于list,tuple,str一样。
2)基本的字典操作
假设d是一个字典:
len(d)字典长度
d[key]字典中键key的值
d[key] = value 赋值(不存在key就自动添加)
del d[key] 删除键为key的项
key in d 检查是否在字典中
3)字典也可以用来格式化
在每个转换说明符(%)后面加上键(用圆括号括起来)再跟上其他说明符:
例如:%(value)s
phonebook = {'jmz':'5153','usr1':'10086'}
"jmz's phone number is %(jmz)s." % phonebook
用这种方式只要给出的键能够在字典中找到,就可以获得任意数量的转换说明符。
4)一些字典方法
clear:
原地操作(无返回值),清除字典中所有项
copy:浅复制和深复制
y = x.copy()
y = deepcopy(x)
fromkeys:
使用给定的键建立新的字典:默认值是None
>>>{}.fromkeys(['key1','key2'])
>>>{'key1':None,'key2':None}
或者:
>>>dict.fromkeys(['key1','key2'])
一样的效果
get:
一般来说,范文不错在的字典项会出错,如:
>>>print d[name]
而
>>>print d.get('name')就会默认返回None
has_key:
返回True或者False
>>>d.has_key('jmz')
items和iteritems:
items方法将字典的项目以列表方法返回:
d = {'key1':'value1','key2':'value2'}
>>>d.items()
>>>[('key1','value1'),('key2','value2')]
iteritems返回的是针对items的迭代对象
>>>it = d.iteritems() #it是上述列表的迭代器对象
>>>list(it)#可以将迭代器转换成列表
>>>[('key1','value1'),('key2','value2')]
keys和iterkeys:
将键以列表形式返回,键的迭代器
pop:
d.pop('key') 有返回值,并移除
popitem:
d.popitem() 弹出随机的项目,因为字典是无序的
setdefault:
>>>d.setdefault('key','default_value')
当key不存在时,返回默认值并更新字典,若key已经存在,就返回它的值,不更新字典,相当于这句话没作用
update:
利用一个字典去更新另一个字典:
>>>d.update(dd)
将dd中的项目添加到d中去,如果重复,就覆盖。
values和itervalues:
返回值的列表,值的列表的迭代器。
以上这篇全面了解python字符串和字典就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。