全面了解python字符串和字典


Posted in Python onJuly 07, 2016

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

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字符串和字典就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python下载一个网页保存为本地的HTML文件实例
May 21 Python
python调用摄像头显示图像的实例
Aug 03 Python
解决python中画图时x,y轴名称出现中文乱码的问题
Jan 29 Python
DataFrame:通过SparkSql将scala类转为DataFrame的方法
Jan 29 Python
pyside+pyqt实现鼠标右键菜单功能
Dec 08 Python
我用Python抓取了7000 多本电子书案例详解
Mar 25 Python
PyCharm 创建指定版本的 Django(超详图解教程)
Jun 18 Python
python关闭占用端口方式
Dec 17 Python
python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例
Mar 05 Python
python实例化对象的具体方法
Jun 17 Python
python实现经纬度采样的示例代码
Dec 10 Python
详解Python openpyxl库的基本应用
Feb 26 Python
对于Python中RawString的理解介绍
Jul 07 #Python
python变量不能以数字打头详解
Jul 06 #Python
Python中shutil模块的常用文件操作函数用法示例
Jul 05 #Python
详解Python中的array数组模块相关使用
Jul 05 #Python
简单掌握Python中glob模块查找文件路径的用法
Jul 05 #Python
Python的shutil模块中文件的复制操作函数详解
Jul 05 #Python
Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享
Jul 04 #Python
You might like
利用discuz实现PHP大文件上传应用实例代码
2008/11/14 PHP
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
2010/05/04 PHP
php获取textarea的值并处理回车换行的方法
2014/10/20 PHP
thinkPHP中配置的读取与C方法详解
2016/12/05 PHP
PHP基于phpqrcode类生成二维码的方法详解
2018/03/14 PHP
php写入txt乱码的解决方法
2019/09/17 PHP
js冒泡、捕获事件及阻止冒泡方法详细总结
2014/05/08 Javascript
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
nodejs开发微博实例
2015/03/25 NodeJs
js实现div层缓慢收缩与展开的方法
2015/05/11 Javascript
javascript实现根据函数名称字符串动态执行函数的方法示例
2016/12/28 Javascript
el表达式 写入bootstrap表格数据页面的实例代码
2017/01/11 Javascript
基于JavaScript实现五子棋游戏
2020/08/26 Javascript
Vue 实现拖动滑块验证功能(只有css+js没有后台验证步骤)
2018/08/24 Javascript
Vue模拟数据,实现路由进入商品详情页面的示例
2018/08/31 Javascript
JavaScript设计模式之代理模式实例分析
2019/01/16 Javascript
python使用xauth方式登录饭否网然后发消息
2014/04/11 Python
在Python的Django框架上部署ORM库的教程
2015/04/20 Python
浅谈用Python实现一个大数据搜索引擎
2017/11/28 Python
python中的二维列表实例详解
2018/06/19 Python
Python设计模式之抽象工厂模式原理与用法详解
2019/01/15 Python
安装好Pycharm后如何配置Python解释器简易教程
2019/06/28 Python
python  logging日志打印过程解析
2019/10/22 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
2019/12/27 Python
Pytorch高阶OP操作where,gather原理
2020/04/30 Python
opencv 图像礼帽和图像黑帽的实现
2020/07/07 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
2021/02/27 Python
CSS3制作彩色进度条样式的代码示例分享
2016/06/23 HTML / CSS
css3的过滤效果简单实例
2016/08/03 HTML / CSS
如何在存储过程中使用Loop
2016/01/05 面试题
心理学专业求职信
2014/06/16 职场文书
超市周年庆活动方案
2014/08/16 职场文书
交通事故死亡赔偿协议书
2014/12/03 职场文书
家长通知书家长意见
2015/06/03 职场文书
Mysql 设置boolean类型的操作
2021/06/04 MySQL
Nginx配置文件详解以及优化建议指南
2021/09/15 Servers