全面了解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中使用摄像头实现简单的延时摄影技术
Mar 27 Python
Python实现约瑟夫环问题的方法
May 03 Python
pandas groupby 分组取每组的前几行记录方法
Apr 20 Python
python如何实现从视频中提取每秒图片
Oct 22 Python
pytorch索引查找 index_select的例子
Aug 18 Python
如何利用python给图片添加半透明水印
Sep 06 Python
python使用pip安装SciPy、SymPy、matplotlib教程
Nov 20 Python
python 连续不等式语法糖实例
Apr 15 Python
基于python实现音乐播放器代码实例
Jul 01 Python
Python实现网络聊天室的示例代码(支持多人聊天与私聊)
Jan 27 Python
python爬虫beautifulsoup库使用操作教程全解(python爬虫基础入门)
Feb 19 Python
Python数据类型最全知识总结
May 31 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
PHP实现的博客欢迎提示功能(很特别哦)
2014/06/05 PHP
[原创]php求圆周率的简单实现方法
2016/05/30 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
2019/12/18 PHP
一些技巧性实用js代码小结
2009/10/14 Javascript
Webkit的跨域安全问题说明
2011/09/13 Javascript
Javascript+CSS实现影像卷帘效果思路及代码
2014/10/20 Javascript
了不起的node.js读书笔记之node.js中的特性
2014/12/22 Javascript
javascript三元运算符用法实例
2015/04/16 Javascript
JQuery悬停控制图片轮播——代码简单
2015/08/05 Javascript
跟我学习javascript的作用域与作用域链
2015/11/19 Javascript
js实现索引图片切换效果
2015/11/21 Javascript
jquery计算出left和top,让一个div水平垂直居中的简单实例
2016/07/13 Javascript
值得学习的bootstrap fileinput文件上传工具
2016/11/08 Javascript
微信小程序冒泡事件及其阻止方法实例分析
2018/12/06 Javascript
Vue.js标签页组件使用方法详解
2019/10/19 Javascript
es6函数之严格模式用法实例分析
2020/03/17 Javascript
[46:44]VG vs TNC Supermajor小组赛B组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
[01:03:22]LGD vs OG 2018国际邀请赛淘汰赛BO3 第一场 8.25
2018/08/29 DOTA
Python线程指南详细介绍
2017/01/05 Python
Python爬虫实现使用beautifulSoup4爬取名言网功能案例
2019/09/15 Python
Python3常见函数range()用法详解
2019/12/30 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
2020/01/16 Python
基于tensorflow指定GPU运行及GPU资源分配的几种方式小结
2020/02/03 Python
基于python3.7利用Motor来异步读写Mongodb提高效率(推荐)
2020/04/29 Python
如何安装并在pycharm使用selenium的方法
2020/04/30 Python
亚马逊墨西哥站:Amazon.com.mx
2018/08/26 全球购物
为您的家、后院、车库等在线购物:Spreetail
2019/06/17 全球购物
Onzie官网:美国时尚瑜伽品牌
2019/08/21 全球购物
《千年梦圆在今朝》教学反思
2014/02/24 职场文书
欢迎横幅标语
2014/06/17 职场文书
小学网上祭英烈活动总结
2014/07/05 职场文书
中学生民族团结演讲稿
2014/08/27 职场文书
2014乡镇党委副书记对照检查材料思想汇报
2014/10/09 职场文书
2014年班组建设工作总结
2014/12/01 职场文书
队列队形口号
2015/12/25 职场文书
SpringBoot2零基础到精通之异常处理与web原生组件注入
2022/03/22 Java/Android