这篇文章主要介绍了 Python 中字符串的常见操作技巧, 结合实例形式总结分析了 Python 针对字符串的反转、编码转换、进制转换及运算等常用技巧, 需要的朋友可以参考下
Python 是一种面向对象、解释型计算机程序设计语言,由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年。Python 语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是 C/C++)很轻松地联结在一起。
本文实例总结了 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 程序设计有所帮助。
来源: http://www.phperz.com/article/17/0323/291067.html