0.序列

列表,元组,字符串都是序列。

序列有两个特点:索引操作符和切片操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。

以字符串为例:

1 str="01 3456 89?"
2
3 print( str[0] ) #'0',索引
4 print( str[1:5] ) #'1 34 ',切片
5 print( str[5:1:-1] ) #'543 '
6 print( str[1:5:-1] ) #output a '\n',no error

1.列表

列表的常见操作:

 1 fruitList = ['lemon', 'mango']
2 print( len(fruitList),"kinds of fruit" ) #2 kinds of fruit
3
4 for fruit in fruitList:
5 print( fruit )
6
7 fruitList.append( "banana" ) #fruitList = ['lemon', 'mango', 'banana']
8 del fruitList[0] #fruitList = ['mango', 'banana']
9 fruitList[0]='orange' #fruitList = ['orange', 'mango']
10 fruitList.sort() #fruitList = ['banana', 'orange']
11 fruitList.remove('banana') #fruitList = ['orange']

当然你也可以这么玩儿:

1 special_list = ["str", 1, ("tupleA",2), [3,4,5] ]
2 print(special_list[2][0]) #tupleA
3 print(special_list[3][2]) #

2.元组

元组和列表十分类似,只不过元组和字符串一样是不可变的。即你不能修改元组。元组的初始化方式如下:

1 fruitTuple = ('lemon', 'mango')
2 emptyTuple = () #empty tuple
3 oneElementTuple = (1,) #tuple has only one element

注意初始化一个元素的元组时,需要在唯一元素后带逗号,表示当前初始化的是一个元组而不是带括号的对象。

常用于打印语句中,和%合作实现定制字符串输出。

3.字符串

字符串常见操作:

 smile = "~^_^~"
if smile.startswith("@_@"):
print("it is fake smile")
if "~" in smile:
print("you may be shy")
if smile.find("?") != -1:
print("are you confused?") alist = ["","",""]
joinStr = smile.join(alist) #joinStr = '1~^_^~2~^_^~3'
splitList = joinStr.split('~') #splitList = ['1', '^_^', '2', '^_^', '3']

Python语言之数据结构1(序列--列表,元组,字符串)的更多相关文章

  1. 用python语言讲解数据结构与算法

    写在前面的话:关于数据结构与算法讲解的书籍很多,但是用python语言去实现的不是很多,最近有幸看到一本这样的书籍,由Brad Miller and David Ranum编写的<Problem ...

  2. python基础知识-04-字符串列表元组

    python其他知识目录 内存,cpu,硬盘,解释器 实时翻译 编译器 :一次性翻译python2,3 除法,2不能得小数,3能得小数 1.字符串操作 1.1字符串操作startswith start ...

  3. python中列表 元组 字符串如何互相转换

    python中有三个内建函数:列表,元组和字符串,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示: >>> s = "xxxxx ...

  4. Python摸爬滚打之day04----基本数据类型(列表,元组)

    1.列表 列表是可变的, 有序的数据类型,列表是按照添加顺序来保存的,可以存放各种数据类型. 1.1    列表的切片(同字符串) 1.2    列表的增删改查 注意: 列表是可以直接在列表上面进行操 ...

  5. python中列表元组字符串相互转换

    python中有三个内建函数:列表,元组和字符串,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示: >>> s = "xxxxx ...

  6. python中的基本数据类型之列表,元组

    一.列表 1.什么是列表. 列表是python的基本数据类型之一,用[]来表示,可以存放各种数据类型(什么都能装,能装对象的对象) 列表相比于字符串,不仅可以存放不同类型的数据,而且可以存放大量的数据 ...

  7. python笔记(1)--序列(列表 元组 range)

    一.序列分类 1.可变序列:list 2.不可变序列:tuple,range 二.序列公共操作方法 1.操作和返回值 其中s和t代表同类型序列:n,i,j,k为整数:x为任意类型. 序号 操作 结果 ...

  8. 在Python中反向遍历序列(列表、字符串、元组等)的五种方式

    1. reversed() a = [1, 2, 3, 4] for i in reversed(a): print(i) 2. range(len(a)-1, -1, -1) a = [1, 2, ...

  9. Python - 反向遍历序列(列表、字符串、元组等)的五种方式

    1. reversed() a = [1, 2, 3, 4] for i in reversed(a): print(i) 2. range(len(a)-1, -1, -1) a = [1, 2, ...

随机推荐

  1. 在代码动态设置RelativeLayout的属性,比如layout_below

    ( (RelativeLayout.LayoutParams)holder.ivLvDivider.getLayoutParams()).addRule(RelativeLayout.BELOW, R ...

  2. zoj——1202 Divide and Count

    Divide and Count Time Limit: 2 Seconds      Memory Limit: 65536 KB Jack has several beautiful diamon ...

  3. AI小记-K近邻算法

    K近邻算法和其他机器学习模型比,有个特点:即非参数化的局部模型. 其他机器学习模型一般都是基于训练数据,得出一般性知识,这些知识的表现是一个全局性模型的结构和参数.模型你和好了后,不再依赖训练数据,直 ...

  4. Lua的面向对象程序设计

    Account={balance=} function Account.withdraw(self,v) self.balance=self.balance-v end a={balance=,wit ...

  5. 【解决】hive与hbase表结合级联查询的问题

    [Author]: kwu [解决]hive与hbase表结合级联查询的问题.hive两个表以上,关联查询时出现长时无法返回的情况. 同一时候也不出现,mr的进度百分比. 查询日志如图所看到的: 解决 ...

  6. Flume NG源代码分析(二)支持执行时动态改动配置的配置模块

    在上一篇中讲了Flume NG配置模块主要的接口的类,PropertiesConfigurationProvider提供了基于properties配置文件的静态配置的能力,这篇细说一下PollingP ...

  7. FZU 2168 防守阵地 I(公式推导)(经典)(中等)

    Problem 2168 防守阵地 I Accept: 377    Submit: 1280 Time Limit: 3000 mSec    Memory Limit : 32768 KB  Pr ...

  8. nyoj27水池数目 (DFS)

    题目27 题目信息 执行结果 本题排行 pid=27" style="text-decoration:none; color:rgb(55,119,188)">讨论 ...

  9. javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet

    今天在调代码的时候遇到了一个异常: javax.xml.transform.TransformerConfigurationException: Could not compile styleshee ...

  10. TCP传输工作原理

    引言 在TCP/IP体系结构中,IP协议只管将数据包尽力传送到目的主机,无论数据传输正确与否,它都不做验证,不发确认,也不保证数据包的顺序,因而不具有可靠性.这一问题要由传输层TCP协议来解决,TCP ...