转自 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

《转》python学习(6)序列类型-字符串的更多相关文章

  1. python基础之序列类型的方法——字符串方法

    python基础之序列类型的方法--字符串方法 Hello大家好,我是python学习者小杨同学,经过一段时间的沉淀(其实是偷懒不想更新),我终于想起了自己的博客账号,所以这次带来的是序列方法的后半部 ...

  2. 【python学习笔记】3.字符串使用

    [python学习笔记]3.字符串使用 字符串是一种序列,素有标准的序列操作对字符串用样适用,字符串是不可以改变 格式化操作符,%,左侧是格式化字符串,右侧是被格式的值,可以是一个值.元组.字典 数值 ...

  3. Python学习之数组类型一:

    Python学习之数组类型一: Numpy中的向量与矩阵: 1.创建:  向量.矩阵均由array函数创建,区别在于向量是v=array( [逗号分隔的元素] ), 矩阵是M=array( [[ ]] ...

  4. python学习笔记(二)、字符串操作

    该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...

  5. python学习(四)字符串学习

    #!/usr/bin/python # 这一节学习的是python中的字符串操作 # 字符串是在Python中作为序列存在的, 其他的序列有列表和元组 # 1. 序列的操作 S = 'Spam' # ...

  6. python基础之序列类型的方法——列表&元组

    Hello大家好,我是python学习者小杨同学,上次跟大家分享关于python的数值类型和序列类型,本次就承接上一节的内容,说一说序列类型的方法. 序列类型的方法,简单的来说就是四个字:增删改查.随 ...

  7. Python基础:序列(字符串)

    一.概述 字符串 类似于C中的字符数组(功能上更像C++中的string),它是由一个个 字符 组成的序列.与C/C++不同的是,Python中没有 字符 这个类型,而是用 长度为1的字符串 来表示字 ...

  8. Python学习三---序列、列表、元组

    一.序列 1.1.序列概念 pythn中最基本的数据结构是序列(sequence). 序列中每个元素被分配一个序号-元素索引,第一个索引是0,第二个是1,以此类推.类似JAVA中数组和集合中的下标. ...

  9. python高级(二)—— python内置序列类型

    本文主要内容 序列类型分类: (1)容器序列.扁平序列 (2)可变序列.不可变序列 列表推导式 生成器表达式 元组拆包 切片 排序(list.sort方法和sorted函数) bisect pytho ...

随机推荐

  1. 【WPF】设置ListBox容器Item的流式布局

    需求:像下图那样显示把一组内容装入ListBox中显示.要求用WrapPanel横向布局,顺序如图中的数字. 问题:ListBox默认的布局是从上往下单列的,所以需要设置布局. <ListBox ...

  2. Fastjson 的简单使用<转>

    简介 Fastjson是一个Java语言编写的高性能功能完善的JSON库. 高性能 fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson. ...

  3. 应用层timer_如何序列化timer

    应用层使用timer可以启动多个timer(每个timer管理一个目标时间),也可启用一个timer来管理多个目标时间. 多个timer时每个timer占用一部分空间,且存在多个timer同时到期的先 ...

  4. JVM 详谈

    JVM 详谈 本来这次应该讲讲ORM 的几个框架,但是笔者还没有完全总结出来,所以这里先插入一次学习JVM的心得.作为一个Java程序员,如果不了解JVM的工作原理,就很难从底层去把 握Java语言和 ...

  5. fail-fast和fail-safe

    一:快速失败(fail—fast) 在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(增加.删除.修改),则会抛出Concurrent Modification Exceptio ...

  6. 服务器不装Excel读取Excel并转换DataTable

    原来是用OleDb.4.0组件读取Excel,但是放到服务器后 傻了,服务器没装Excel ,而且领导说不可以装 没办法,只好自己重新找下代码 在CodeProject找到一个开源的dll,一阵欢喜啊 ...

  7. el 表达式 强制类型转换

    el 表达式 强制类型转换 今天有人问我了这个问题 jsp页面中,能否实现 <%  request.setAttrites("a","1234");  % ...

  8. eclipse新建python项Project interpreter not specified

    安装好pydev后新建python项目时提示”Project interpreter not specified“的错误,这是因为没有导入python开发环境所致 解决方法如下:1.找到eclipse ...

  9. double类型保留2位小数

    double d = 12.2289; java.text.DecimalFormat df = new java.text.DecimalFormat("#.00"); Syst ...

  10. 关于Cocos2d-x中自己定义的类的名字和Cocos2d-x引擎库中的类的名字重复的解决方法

    方法一: 修改自己定义的类的名字,VS2013中可以用Ctrl+H来替换某个特定的单词,Ctrl+F是用来查询某个单词所在的位置或者有没有存在. 方法二: 1.给自己定义的类的.h和.cpp文件的整体 ...