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 Web服务器Tornado使用小结
May 06 Python
Python中bisect的用法
Sep 23 Python
python自动化测试之连接几组测试包实例
Sep 28 Python
Python实现简单状态框架的方法
Mar 19 Python
Python随机生成信用卡卡号的实现方法
May 14 Python
基于Python_脚本CGI、特点、应用、开发环境(详解)
May 23 Python
Python表示矩阵的方法分析
May 26 Python
Python实现手机号自动判断男女性别(实例解析)
Dec 22 Python
python 回溯法模板详解
Feb 26 Python
django列表筛选功能的实现代码
Mar 27 Python
使用Keras构造简单的CNN网络实例
Jun 29 Python
Python 3.10 的首个 PEP 诞生,内置类型 zip() 迎来新特性(推荐)
Jul 03 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
PHP获取中英混合字符串长度的方法
2014/06/07 PHP
Win7 64位系统下PHP连接Oracle数据库
2014/08/20 PHP
使用iojs的jsdom库实现同步系统时间
2015/04/20 Javascript
微信企业号开发之微信考勤Cookies的使用
2015/09/11 Javascript
JQuery通过AJAX从后台获取信息显示在表格上并支持行选中
2015/09/15 Javascript
jQuery实现简单隔行变色的方法
2016/02/20 Javascript
谈谈JavaScript的New关键字
2016/08/26 Javascript
前端面试知识点锦集(JavaScript篇)
2016/12/28 Javascript
js+canvas实现动态吃豆人效果
2017/03/22 Javascript
vue 中directive功能的简单实现
2018/01/05 Javascript
JavaScript实现多重继承的方法分析
2018/01/09 Javascript
JS数组方法reduce的用法实例分析
2020/03/03 Javascript
[56:42]VP vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
[40:53]完美世界DOTA2联赛PWL S3 Magma vs DLG 第二场 12.18
2020/12/20 DOTA
Python多线程原理与用法详解
2018/08/20 Python
python检测IP地址变化并触发事件
2018/12/26 Python
Python中list循环遍历删除数据的正确方法
2019/09/02 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
python性能测试工具locust的使用
2020/12/28 Python
YBF Beauty官网:美丽挚友,美国知名彩妆品牌
2020/11/22 全球购物
学校办公室主任职责
2013/12/27 职场文书
化学实验员岗位职责
2013/12/28 职场文书
研究生毕业鉴定
2014/01/29 职场文书
岗位职责的构建方法
2014/02/01 职场文书
美国探亲签证邀请信
2014/02/05 职场文书
材料专业毕业生求职信
2014/02/26 职场文书
高三毕业典礼主持词
2014/03/27 职场文书
铅球加油稿100字
2014/09/26 职场文书
个人租房协议书(范本)
2014/10/14 职场文书
大学生村官个人总结
2015/02/15 职场文书
会议主持词开场白
2015/05/28 职场文书
python中的3种定义类方法
2021/11/27 Python
python的netCDF4批量处理NC格式文件的操作方法
2022/03/21 Python
如何解决flex文本溢出问题小结
2022/07/15 HTML / CSS
nginx sticky实现基于cookie负载均衡示例详解
2022/12/24 Servers