《转》python学习(6)序列类型-字符串

转自 http://www.cnblogs.com/BeginMan/archive/2013/06/08/3125502.html

二、序列类型

包含字符串、列表、元祖。模式都一样,举一反三即可。如:

1、成员关系操作符(in / not in )

2、关于切片

1
2
3
4
5
6
s=[1,2,3,4]
print s[::-1]     #下标范围[0,0],步长是-1,则从后(4,包括4)往前切取所有,输出:[4, 3, 2, 1]
print s[::-2]     #下标范围[0,0],步长是-2,则从后(4,包括4)往前跳过2位切取,输出:[4, 2]
print s[::]        #下标范围[0,0],步长是0,则从前(1,包括1)往后切取所有,输出:[1, 2, 3, 4]
print s[::2]       #下标范围[0,0],步长是2,则从前(1,包括1)往后跳过2位切取,输出:[1, 3]
print s[1:4:2#下标范围[1,4],步长是2,则从下标为1(2)到下标为4(4)跳过2位切取,输出:[2, 4]

 要灵活运用。

三、关于序列类型的内建函数

如list()、tuple()、str()类型转换,实际上是工厂函数,浅copy的结果而并非真正的改头换面(转换)。

注意在string类型上应用list()、tuple()往往并不能得到我们想要的结果。

序列类型的内建函数一览表:

 cmp()、len()、max()、min()、enumerate()、zip()、

四、Unicode字符串

1 >>> 'hello'+u' '+'world'
2 u'hello world'

五、字符串类型的内建方法

1、不常用的string模块

 1 >>> import string
 2 >>> string.uppercase
 3 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
 4 >>> string.lowercase
 5 'abcdefghijklmnopqrstuvwxyz'
 6 >>> string.whitespace
 7 '\t\n\x0b\x0c\r '
 8 >>> string.digits
 9 '0123456789'
10 >>> string.punctuation
11 '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'

打开这个string.py模块,如下:

.......................................
# Some strings for ctype-style character classification
whitespace = ' \t\n\r\v\f'
lowercase = 'abcdefghijklmnopqrstuvwxyz'
uppercase = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
letters = lowercase + uppercase
ascii_lowercase = lowercase
ascii_uppercase = uppercase
ascii_letters = ascii_lowercase + ascii_uppercase
digits = '0123456789'
hexdigits = digits + 'abcdef' + 'ABCDEF'
octdigits = '01234567'
punctuation = """!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~"""
printable = digits + letters + punctuation + whitespace

# Case conversion helpers
.......................................

不常用,很多功能可以自己模拟。

2、内建函数

join/split:http://www.cnblogs.com/BeginMan/archive/2013/03/21/2972857.html

posted @ 2017-03-26 15:38  nolonely  阅读(542)  评论(0编辑  收藏  举报