全面了解python字符串和字典

作者:jingxian 时间:2021-05-03 21:06:43 

很多序列的方法字符串同样适用,
但是,字符串是不可变的,所以一些试图改变字符串的方法是不可用的

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,字符串,字典
0
投稿

猜你喜欢

  • python数据结构之列表和元组的详解

    2021-01-23 17:34:27
  • Python Django 简单分页的实现代码解析

    2021-11-05 13:27:38
  • 对django2.0 关联表的必填on_delete参数的含义解析

    2023-04-01 22:59:28
  • PHP伪静态页面函数附使用方法

    2023-11-22 06:25:42
  • python opencv图片编码为h264文件的实例

    2023-01-12 13:22:07
  • python使用redis模块来跟redis实现交互

    2023-05-06 04:13:40
  • python scatter函数用法实例详解

    2021-12-17 11:51:50
  • CVE-2020-15148漏洞分析

    2023-06-13 13:41:18
  • 浅析PyTorch中nn.Module的使用

    2021-10-29 14:04:53
  • js经验分享 JavaScript反调试技巧

    2023-07-13 07:53:04
  • 分享我们的select控件设计过程

    2009-06-16 18:04:00
  • python解决OpenCV在读取显示图片的时候闪退的问题

    2022-04-16 16:29:48
  • PHP开发技巧之PHAR反序列化详解

    2023-11-15 02:23:45
  • 用JavaScript脚本实现的图灵机

    2009-01-21 18:10:00
  • Javascript"篱式"条件判断(翻译)

    2008-08-01 12:21:00
  • asp 动态生成rss(不成生xml文件)代码

    2011-04-04 11:17:00
  • MySQL 自动备份与数据库被破坏后的恢复方法

    2010-03-25 10:29:00
  • python区块链持久化和命令行接口实现简版

    2023-10-28 09:43:08
  • Python中生成Epoch的方法

    2021-06-27 15:21:15
  • 强悍的Python读取大文件的解决方案

    2021-12-26 19:25:28
  • asp之家 网络编程 m.aspxhome.com