Python字符串和字典相关操作的实例详解


Posted in Python onSeptember 23, 2017

Python字符串和字典相关操作的实例详解

字符串操作:

字符串的 % 格式化操作:

str = "Hello,%s.%s enough for ya ?"
values = ('world','hot')
print str % values

输出结果:

Hello,world.hot enough for ya ?

模板字符串:

#coding=utf-8
from string import Template
## 单个变量替换
s1 = Template('$x, glorious $x!')
print s1.substitute(x = 'slurm')

## 美元符号表示以及单个变量的替换
s2 = Template("Make $$ selling $x!")
print s2.substitute(x = 'slurm')

## 字段变量的替换
s3 = Template('A $thing must never $action .')
d = {}
d['thing'] = 'gentleman'
d['action'] = 'show his socks'
print s3.substitute(d)

ps:safe_substitute 不会因缺少值或者不正确使用$字符而出错。

字符串格式化类型:

(1) %字符:标记转换说明符的开始,就是开始替换。
(2) -表示左对齐,+表示在转换值之前加上正负号。0表示转换值位数不够则用0填充。
(3) * 可以指定最小字段宽度。
(4) 点(.)后面跟上精度值。

字符串方法:

(1)find:可以在一个较长的字符串中查找子字符串,返回子串所在位置的最左端索引。如果没有找到则返回-1.

print 'With a moo-moo here, and a moo-moo there'.find('moo')
返回:7

(2)join方法:将字符串拼接起来。

print '/'.join((' ','usr','bin','env'))
输出: /usr/bin/env
ps:和谷歌的guava有点像。

(3)lower方法: 返回字符串的小写字母版。

print 'AK47'.lower()
输出:ak47

(4)replace方法:返回某字符串的所有匹配项均被替换之后的得到的字符串。

'This is a test'.replace('is','ezz')
输出:Thezz ezz a test

(5)split方法:join的逆方法,将字符串分隔成序列。

print '1+2+3+4+5'.split('+')
输出:['1', '2', '3', '4', '5']

(6)strip方法:去除两侧的字符串,默认是空格字符串,也可以指定相应的字符串。

ps:另外可以参加lstrip和rstrip方法。

(7)translate方法:和 replace 方法一样,可以替换字符串中某些部分,但是和前者不同的是,translate方法只处理单个字符。它的优势在于可以同时进行多个替换,有些时候比replace效率高的多。

ps:maketrans方法和translate方法类似。

字典的基本操作:

(1) dict方法:用来构造字典数据。

dict(name='Gumby',age=42)
dict([('name','Gumby'),('age',42)])
ps:都是构造字段的方法。

(2) 字典基本操作:

1. len(d) 返回d中项(键值)的数量。
2. d[k]返回关联到键k上的值。
3. d[k]=v 将值v关联到键k上。
4. del d[k] 删除键为k的项。
5. k in d 检查d中是否含有键为k的项。

(3) copy 方法返回一个具有相同键值对的新字典。

(4) fromkeys:方法使用给定的键建立新的字典,每个键对应的值为None。

print {}.fromkeys(['name','age'])
输出:{'age': None, 'name': None}

(5) get方法:get方法是个更宽松的字典项方法。

d = {}
d['name'] 如此访问时会报错。
d.get('name')访问时,如果不存在会返回None。

(6) haskey: haskey方法可以检查字典中是否含有给出的键。d.has_key(k) 相当于 k in d。

(7) items和iteritems方法:

items方法会将字典按照键值元组列表的形式返回,但没有顺序。
iteritems和items类似,但是返回的是迭代器。

(8) keys和iterkeys和item类似,这个是返回key的列表或者迭代器。

(9) values方法以列表形式返回字典中的值,和keys或iterkeys不同的是,返回的值可以包含重复值。

(10) update方法可以用一个字典来更新另外一个字典。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python进程通信之匿名管道实例讲解
Apr 11 Python
Python利用BeautifulSoup解析Html的方法示例
Jul 30 Python
用不到50行的Python代码构建最小的区块链
Nov 16 Python
Python xlwt设置excel单元格字体及格式
Apr 18 Python
15行Python代码带你轻松理解令牌桶算法
Mar 21 Python
Python OpenCV 调用摄像头并截图保存功能的实现代码
Jul 02 Python
Python爬虫动态ip代理防止被封的方法
Jul 07 Python
Python实现基于SVM的分类器的方法
Jul 19 Python
解决pycharm导入本地py文件时,模块下方出现红色波浪线的问题
Jun 01 Python
python中wheel的用法整理
Jun 15 Python
Python 存取npy格式数据实例
Jul 01 Python
python爬虫使用scrapy注意事项
Nov 23 Python
使用Turtle画正螺旋线的方法
Sep 22 #Python
详谈python read readline readlines的区别
Sep 22 #Python
Python实现针对含中文字符串的截取功能示例
Sep 22 #Python
Python实现二维数组按照某行或列排序的方法【numpy lexsort】
Sep 22 #Python
Python中列表list以及list与数组array的相互转换实现方法
Sep 22 #Python
Python实现字符串与数组相互转换功能示例
Sep 22 #Python
Python中用post、get方式提交数据的方法示例
Sep 22 #Python
You might like
社区(php&&mysql)一
2006/10/09 PHP
来自PHP.NET的入门教程
2006/10/09 PHP
解决中英文字符串长度问题函数
2007/01/16 PHP
php+mysql事务rollback&commit示例
2010/02/08 PHP
PHP引用符&的用法详细解析
2013/08/22 PHP
php lcg_value与mt_rand生成0~1随机小数的效果对比分析
2017/04/05 PHP
微信JSSDK分享功能图文实例详解
2019/04/08 PHP
How to Auto Include a Javascript File
2007/02/02 Javascript
JavaScript CSS修改学习第一章 查找位置
2010/02/19 Javascript
深入理解JavaScript定时机制
2010/10/29 Javascript
js 事件处理函数间的Event物件是否全等
2011/04/08 Javascript
node.js中的fs.fstat方法使用说明
2014/12/15 Javascript
JS拖拽组件学习使用
2016/01/19 Javascript
第五章之BootStrap 栅格系统
2016/04/25 Javascript
D3.js实现折线图的方法详解
2016/09/21 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
2017/01/13 Javascript
浅谈gulp创建完整的项目流程
2017/12/20 Javascript
jQuery中图片展示插件highslide.js的简单dom
2018/04/22 jQuery
Vue.js项目中管理每个页面的头部标签的两种方法
2018/06/25 Javascript
layui多图上传实现删除功能的例子
2019/09/23 Javascript
vue 解决移动端弹出键盘导致页面fixed布局错乱的问题
2019/11/06 Javascript
非常漂亮的js烟花效果
2020/03/10 Javascript
[47:43]完美世界DOTA2联赛PWL S3 Magama vs GXR 第二场 12.19
2020/12/24 DOTA
Python 命令行参数sys.argv
2008/09/06 Python
web.py 十分钟创建简易博客实现代码
2016/04/22 Python
selenium+python实现1688网站验证码图片的截取功能
2018/08/14 Python
Python3爬楼梯算法示例
2019/03/04 Python
Django实现CAS+OAuth2的方法示例
2019/10/30 Python
Python模块 _winreg操作注册表
2020/02/05 Python
python turtle工具绘制四叶草的实例分享
2020/02/14 Python
中年人生感言
2014/02/04 职场文书
表决心的诗句大全
2014/03/11 职场文书
2015年社区创卫工作总结
2015/04/21 职场文书
公司开除员工通知
2015/04/22 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
用Python实现屏幕截图详解
2022/01/22 Python