Python中字符串的常见操作技巧总结


Posted in Python onJuly 28, 2016

本文实例总结了Python中字符串的常见操作技巧。分享给大家供大家参考,具体如下:

反转一个字符串

>>> S = 'abcdefghijklmnop'
>>> S[::-1]
'ponmlkjihgfedcba'

这种用法叫做three-limit slices

除此之外,还可以使用slice对象,例如

>>> 'spam'[slice(None, None, -1)]
>>>

unicode码与字符(single-character strings)之间的转换

>>> ord('s') # ord -> ordinal
115
>>> chr(115) # chr -> char?
's'

二进制转十进制

>>> B = '1101'
>>> I = 0
>>> while B != '':
...   I = I * 2 + (ord(B[0]) - ord('0'))
...   B = B[1:]
...
>>> I
13

这里的二进制到十进制计算方式是我们已经习惯的计算方法不太一样,我们一般习惯于给二进制的每一位乘上权值再求和。

而这里的计算方式其实跟左移操作类似,计算的方向为从左到右。

(1)2 = 1
(11)2 = (1)2 << 1 + 1
(110)2 = (11)2 << 1 + 0
(1101)2 = (110)2 << 1 + 1

当然还有更简单的方式

>>> int('1101', 2)
13
>>> bin(13)
'0b1101'

为每个字符添加一个间隔符

>>> S = 'spammy'
>>> L = list(S)
>>> L
['s', 'p', 'a', 'm', 'm', 'y']
>>> L[3] = 'x'
>>> L[4] = 'x'
>>> L
['s', 'p', 'a', 'x', 'x', 'y']
>>> S = '-'.join(L)
>>> S
's-p-a-x-x-y'
>>>

更简洁的版本

>>> 'SPAM'.join(['eggs', 'sausage', 'ham', 'toast'])
'eggsSPAMsausageSPAMhamSPAMtoast'

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python文件比较示例分享
Jan 10 Python
在Django的URLconf中使用多个视图前缀的方法
Jul 18 Python
python并发编程之多进程、多线程、异步和协程详解
Oct 28 Python
Python中scatter函数参数及用法详解
Nov 08 Python
python清除函数占用的内存方法
Jun 25 Python
Python中的取模运算方法
Nov 10 Python
python实时获取外部程序输出结果的方法
Jan 12 Python
对tensorflow中tf.nn.conv1d和layers.conv1d的区别详解
Feb 11 Python
Python-for循环的内部机制
Jun 12 Python
Python 捕获代码中所有异常的方法
Aug 03 Python
详解vscode实现远程linux服务器上Python开发
Nov 10 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
Dec 04 Python
Python中不同进制的语法及转换方法分析
Jul 27 #Python
深入理解Python装饰器
Jul 27 #Python
python批量制作雷达图的实现方法
Jul 26 #Python
python 添加用户设置密码并发邮件给root用户
Jul 25 #Python
Python文件夹与文件的相关操作(推荐)
Jul 25 #Python
浅谈python类属性的访问、设置和删除方法
Jul 25 #Python
python直接访问私有属性的简单方法
Jul 25 #Python
You might like
评分9.0以上的动画电影,剧情除了经典还很燃
2020/03/04 日漫
COM in PHP (winows only)
2006/10/09 PHP
smarty获得当前url的方法分享
2014/02/14 PHP
php像数组一样存取和修改字符串字符
2014/03/21 PHP
php版微信公众号自定义分享内容实现方法
2016/09/22 PHP
PHP多个图片压缩成ZIP的方法
2020/08/18 PHP
EXTJS内使用ACTIVEX控件引起崩溃问题的解决方法
2010/03/31 Javascript
jquery实现按Enter键触发事件示例
2013/09/10 Javascript
jquery实现的图片点击滚动效果
2014/04/29 Javascript
jquery获取当前日期的方法
2015/01/14 Javascript
详解jQuery向动态生成的内容添加事件响应jQuery live()方法
2015/11/02 Javascript
javascript省市区三级联动下拉框菜单实例演示
2015/11/29 Javascript
JS公共小方法之判断对象是否为domElement的实例
2016/11/25 Javascript
详解Node中导入模块require和import的区别
2017/08/11 Javascript
使用layui+ajax实现简单的菜单权限管理及排序的方法
2019/09/10 Javascript
解决LayUI数据表格复选框不居中显示的问题
2019/09/25 Javascript
使用python搭建Django应用程序步骤及版本冲突问题解决
2013/11/19 Python
跟老齐学Python之不要红头文件(2)
2014/09/28 Python
简单上手Python中装饰器的使用
2015/07/12 Python
Python中数字以及算数运算符的相关使用
2015/10/12 Python
简单了解什么是神经网络
2017/12/23 Python
Python中的pack和unpack的使用
2018/03/12 Python
python3使用SMTP发送HTML格式邮件
2018/06/19 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
2020/01/10 Python
python3中datetime库,time库以及pandas中的时间函数区别与详解
2020/04/16 Python
完美解决keras 读取多个hdf5文件进行训练的问题
2020/07/01 Python
Python实现我的世界小游戏源代码
2021/03/02 Python
海外淘书首选:AbeBooks
2017/07/31 全球购物
Visual-Click葡萄牙:欧洲领先的在线眼镜商
2020/02/17 全球购物
毕业生毕业总结的自我评价范文
2013/11/02 职场文书
应届毕业生自我评价分享
2013/12/15 职场文书
县人大领导班子四风对照检查材料思想汇报
2014/10/09 职场文书
幼儿园五一劳动节活动总结
2015/02/09 职场文书
商超业务员岗位职责
2015/02/13 职场文书
K8s部署发布Golang应用程序的实现方法
2021/07/16 Golang
win11无法登录onedrive错误代码0x8004def7怎么办 ?
2022/04/05 数码科技