很多序列的方法字符串同样适用,
但是,字符串是不可变的,所以一些试图改变字符串的方法是不可用的
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字符串和字典就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。