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

yipeiwu_com6年前Python基础

本文实例总结了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编码操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

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

相关文章

python求加权平均值的实例(附纯python写法)

首先是数据源: #需要求加权平均值的数据列表 elements = [] #对应的权值列表 weights = [] 使用numpy直接求: import numpy as n...

python获取点击的坐标画图形的方法

获取输入的五个点画五边形 def pentagonUpdate(): p = {} win = GraphWin("Click", 800, 300)#后面两个值为窗体的长和...

Python推导式简单示例【列表推导式、字典推导式与集合推导式】

本文实例讲述了Python推导式。分享给大家供大家参考,具体如下: 1. 列表推导式 >>> li = [1,2,3,4,5,6] # 求元素的平方 >>...

浅谈PYTHON 关于文件的操作

1.打开文件: f=open(r'E:\PythonProjects\test7\a.txt',mode='rt',encoding='utf-8') 以上三个单引号内分别表示:要打开的...

pytorch中获取模型input/output shape实例

Pytorch官方目前无法像tensorflow, caffe那样直接给出shape信息,详见 https://github.com/pytorch/pytorch/pull/3043...