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 字符串定义
Sep 25 Python
python的类变量和成员变量用法实例教程
Aug 25 Python
Python的Django框架安装全攻略
Jul 15 Python
Python实现简单字典树的方法
Apr 29 Python
Python实现网络端口转发和重定向的方法
Sep 19 Python
Python栈算法的实现与简单应用示例
Nov 01 Python
Python实现获取nginx服务器ip及流量统计信息功能示例
May 18 Python
python实现自动发送报警监控邮件
Jun 21 Python
Python清空文件并替换内容的实例
Oct 22 Python
Python reversed函数及使用方法解析
Mar 17 Python
Python环境配置实现pip加速过程解析
Nov 27 Python
python使用shell脚本创建kafka连接器
Apr 29 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实现小型站点广告管理(修正版)
2006/10/09 PHP
学习discuz php 引入文件的方法DISCUZ_ROOT
2009/06/21 PHP
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
2013/06/24 PHP
PHP获取某个月最大天数(最后一天)的方法
2015/07/29 PHP
Laravel多用户认证系统示例详解
2018/03/13 PHP
tp5.1 实现setInc字段自动加1
2019/10/18 PHP
laravel框架邮箱认证实现方法详解
2019/11/22 PHP
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
Jquery index()方法 获取相应元素索引值
2012/10/12 Javascript
Extjs的FileUploadField文件上传出现了两个上传按钮
2014/04/29 Javascript
JavaScript打印网页指定区域的例子
2014/05/03 Javascript
BootStrap表单验证实例代码
2017/01/13 Javascript
Vue分页组件实例代码
2017/04/17 Javascript
JS常用正则表达式总结【经典】
2017/05/12 Javascript
js随机生成一个验证码
2017/06/01 Javascript
使用JS组件实现带ToolTip验证框的实例代码
2017/08/23 Javascript
JS严格模式原理与用法实例分析
2020/04/27 Javascript
微信小程序实现时间戳格式转换
2020/07/20 Javascript
vue 判断页面是首次进入还是再次刷新的实例
2020/11/05 Javascript
Python Requests安装与简单运用
2016/04/07 Python
Python爬取qq music中的音乐url及批量下载
2017/03/23 Python
Python基于正则表达式实现检查文件内容的方法【文件检索】
2017/08/30 Python
Django项目中model的数据处理以及页面交互方法
2018/05/30 Python
使用python批量读取word文档并整理关键信息到excel表格的实例
2018/11/07 Python
Python实现的删除重复文件或图片功能示例【去重】
2019/04/23 Python
Python利用PyExecJS库执行JS函数的案例分析
2019/12/18 Python
python super用法及原理详解
2020/01/20 Python
什么是测试驱动开发(TDD)
2012/02/15 面试题
简历中自我评价怎么写
2014/02/12 职场文书
医德医风演讲稿
2014/05/20 职场文书
2015年中秋节演讲稿
2015/03/20 职场文书
乡镇团代会开幕词
2016/03/04 职场文书
2021年pycharm的最新安装教程及基本使用图文详解
2021/04/03 Python
Python学习开发之图形用户界面详解
2021/08/23 Python
CSS 一行代码实现头像与国旗的融合
2021/10/24 HTML / CSS
分享提高 Python 代码的可读性的技巧
2022/03/03 Python