本节考虑的Python的一个中要的内置对象序列, 所谓的序列即一个有序对象的集合。这里的对象可以是数字、字符串等。根据功能的不同将序列分为字符串、列表、元组,本文将以下这几种对象做一些介绍。

一. 字符串

字符串是一个非常常见的对象,我们平时在文本中编辑的对象都是字符串,例如‘你的名字,‘I love python!’等都是字符串,字符串的重要性不言而喻。

1.字符串的定义

通常我们将需要编辑的字符串的字符串放在一个英文的单引号/英文双引号中,例如当我们在编辑器输入'I love python ! '的时候我们就创建了一个字符串对象,此时的字符串还没有变量来接受,所以我们需要用一个变量名来接受该字符串。例如 s1 = 'I love python ! ', 这就是创建一个字符串的完整格式,即 变量名 = ‘’字符串对象’,这里需要注意的是英文单引号。

2.字符串的相关运算

>>>s1 = 'I love python ! '

>>>s1 = 'Hello 2018 ! '

合并:+ , 字符串的加法表示字符串的合并

>>> s1+s2

'I love python !Hello 2018 !'

重复: *, 乘法表示字符串的重复

>>> s1*3

'I love python !I love python !I love python !'

索引:s1[index] 正数表示从第一个位置0开始索引,负数表示从倒数第一个开始 。注意空格也是一个字符串

>>> s1[0]

'I'

>>> s1[-1]

'!'

>>> s1[1]

' '

s.find(object):查找元素位置,默认返回元素第一次出现的位置,可添加查找范围,若没有返回-1

s.index(value, [start, [stop]])默认返回元素第一次出现的位置,可添加查找范围,如不存在则会报错。

s[i:j] : 切片,截取字符串的某一部分,i为截取开始段,j为截取结束段。注意包含开始不包含结束( 左闭右开)

>>> s1[2:7]

'love '

len(s): 判断长度, 返回字符串的长度

s.count('a'): 返回s中a的个数,若没有返回0

s.endswith('hk'): 是否以...结尾,返回True /False

s.startswith('a'):是否以...开始,返回True /False

s.replace('old','new'): 替换,需要特别注意的是替换并没有改变字符串的值,而是开辟了新的一个字符串对象,若需要用新的字符串对象字需要为它赋一个新的变量名

>>> s1.replace('love','hate')

'I hate python !'

>>> s1

'I love python !'

s.isalpha(): 判断是否全是字母/汉字

s.isdigit():判断是否全是数字,只能判断正整数

s.islower():判断是否全是小写

s.isupper():判断是否全是大写

s.lower(): 转换为小写

s.upper(): 转换为大写 #另外开辟一个地址需要一个新的地址接受,s本身没有变

>>> s1.upper()

'I LOVE PYTHON !'

>>> s1

'I love python !'

s.split(): 分割,默认以空格分割,也可以自定义分割位置,分割之后转化为列表。字符串自身没有不改变。

>>> s1.split()

['I', 'love', 'python', '!']

>>> s1.split('love')

['I ', ' python !']

>>> s1

'I love python !'

只对经常用到的操作做以介绍,在介绍中特别强调了,字符串自身没有发生改变,这一点是非常重要的字符串一旦定义就不会发生改变,若要利用操作之后新的字符串一定一定要将其赋给一个新的变量名。

二. 列表

列表Python中比较灵活的是有序对象的集合,以字符串不同的是,列表可以包含任何对象:数字,字符串,甚至其他列表。同样,与字符串不同的是列表都是可变对象,他们支持在原处修改。下面对列表进行描述:

列表是:

任意对象的有序集合

通过偏序读取

可改变长度、异构以及任意嵌套

可改变序列分类

1.定义

L = ['Hello','world','!']     列表的定义是放在英文[]中括号内的,可嵌套如 L = ['Hello','world','!',['I','love','Python','!']]

2. 列表的运算

L = ['Hello','world','!']

L1 = ['Hello','world','!',['I','love','Python','!']]

L[i],L[i][j]: 索引

>>> L1[2]

'!'

>>> L1[3]

['I', 'love', 'Python', '!']

>>> L1[3][1]

'love'

L[i:j]: 切片,左闭右开

len(L):

+:合并

*: 重复

添加:

L.append(object):在末尾添加对象,一次只能添加一个对象,若对象为一个列表时将该列表视为一个对象

L.extend(object):在末尾添加对象,一次可以添加多个对象,这是append()函数与insert()函数的主要区别

L.insert(index,object):在固定的位置添加对象,index表示添加对象的位置,一次只能添加一个对象。注意添加对象后面的

对象的索引都发生了变化。

删除:

L.pop() 默认删除最后一个元素

L.remove(value) -> None 指定删除

L.clear() -> None -- remove all items from L:将列表清空

L.copy() -> list -- a shallow copy of L: 复制,注意复制后不是同一个对象,内存地址改变。copy()是复制函数,复制之后变为两个相同的对象,他们相同但不是同一个        对象

>>> L2 = L.copy()

>>> L2

['Hello', 'world', '!']

>>> L2 == L

True

>>> L2 is L

False

>>> id(L)

59761048

>>> id(L2)

59761128

L.reverse():  将列表反转

L.sort(): 排序,排序是一个语言中非常重要的一部分,以后会对sort()函数做一个深入的介绍,这里简单介绍一些用法。

>>> L

['Hello', 'world', '!']

>>> L.sort()

>>> L

['!', 'Hello', 'world']

>>> L.sort(key = len, reverse = True)

>>> L

['Hello', 'world', '!']

字符串转化为列表:s.split(), list(s)

>>> s1 = 'China is a great country'

>>> L = s1.split()

>>> L

['China', 'is', 'a', 'great', 'country']

>>> L1 = list(s1)

>>> L1

['C', 'h', 'i', 'n', 'a', ' ', 'i', 's', ' ', 'a', ' ', 'g', 'r', 'e', 'a', 't', ' ', 'c', 'o', 'u', 'n', 't', 'r', 'y']

列表的基本操作目前就介绍这些,进一步的操作将在以后的学习中介绍。 ***注意列表是可变的***

三. 元组

元组有简单对象构成,元组与列表非常相似,只不过元组不能在远处修改(它们是不可变的),构成使用圆括号,元组具有列表的大多数属性。

元组是:

任意对象的有序集合

通过偏序读取

属于不可变序列类型

固定长度、异构任意嵌套

1. 元组的定义

元组的定义方式有两种如下

>>> T =1,2,3

>>> T

(1, 2, 3)

>>> T=(1,2,3)

>>> T

(1, 2, 3)

2. 元组的操纵

元组的基本操作与列表一样,这里不多做介绍

问题: 为什么有了列表还要元组?

元组的不可变性提供了某种完整性,可以确保在程序中不会被修改,而列表没有这样的性质。元组的角色类似于‘常量声明’, 一旦定义无法改变,而列表不具备这样的性质。实际中应该按需应用。

python序列类型举例说明_Python基础__Python序列基本类型及其操作(1)相关推荐

  1. python读取文件特定内容_Python基础知识之文件的读取操作

    读取文件的操作步骤 有一道脑筋急转弯,问把大象装进冰箱的步骤,答案很简单,打开冰箱.把大象推进去.关闭冰箱.这就是一个处理问题的思路,我们对文件的操作和这个一样,第一步:打开文件:第二部:处理文件(读 ...

  2. python容量变化类型有哪些_python基础数据类型补充以及编码的进阶

    一. 基础数据类型补充内容 1.1 字符串 字符串咱们之前已经讲了一些非常重要的方法,剩下还有一些方法虽然不是那么重要,但是也算是比较常用,在此给大家在补充一些,需要大家尽量记住. #captaliz ...

  3. python定义一个list数据来源于变量_python基础知识4--数据类型与变量

    阅读目录 一.变量 二.数据类型 2.1 什么是数据类型及数据类型分类 2.2 标准数据类型: 2.2.1 数字 2.2.1.1 整型: 2.2.1.2 长整型long: 2.2.1.3 布尔bool ...

  4. python中print的本质_Python基础语法全解

    一.Python简介 1. 了解Python Python是一种解释型(这意味着开发过程中没有了编译这个环节).面向对象(支持面向对象的风格或代码封装在对象的编程技术).动态数据类型的交互式(可在命令 ...

  5. python函数作用域与闭包_python基础-08-内置函数、作用域、闭包、递归

    python基础-内置函数.作用域.闭包.递归 1.常见的内置函数 常见的内置函数: 查看内置函数: print(dir(__builtins__)) 常见函数 type() 数据类型 print() ...

  6. python 语法错误 和异常_Python基础知识:新手学Python时常见的语法错误和异常

    大家好,今天我们简单介绍下在学习Python时常见的一些错误和异常. 记得刚接触Python的时候,一条简单的语句在执行的时候却总能遇到报错.然后各种艰难的复查发现可能是循环语句缺少冒号啊.用了中文的 ...

  7. python教程文档下载_Python基础教程(第2版)PDF文档下载

    本书是经典教程的全新改版,作者根据Python 3.0版本的种种变化,全面改写了书中内容,做到既能"瞻前"也能"顾后".本书层次鲜明.结构严谨.内容翔实,特别是 ...

  8. 用python循环语句求素数_Python基础入门_3条件语句和迭代循环

    Python 基础入门前两篇: Python 基础入门--简介和环境配置 Python基础入门_2基础语法和变量类型 这是第三篇内容,主要简单介绍条件语句和迭代循环语句,内容也比较简单,目录如下: 条 ...

  9. python中的封装调用_Python基础之封装

    一.什么是封装 在程序设计中,封装(Encapsulation)是对具体对象的一种抽象,即将某些部分隐藏起来,在程序外部看不到,其 含义是其他程序无法调用. 要了解封装,离不开"私有化&qu ...

最新文章

  1. HTML的标签描述19
  2. 2013年第10周三低潮
  3. [Xcode 实际操作]四、常用控件-(15)MKMapView加载简单视图
  4. Vue 之 qs.parse()、qs.stringify()使用方法
  5. Servlet HTTP Status 405 - HTTP method GET is not supported by this URL
  6. ajax请求返回json实例,Jquery Ajax 学习实例2 向页面发出请求 返回JSon格式数据
  7. 《Algorithms》Java 语言特性
  8. PIL修改带有透明像素的png图片颜色
  9. rel=nofollow属性--seo
  10. Vivado 2019使用教程
  11. UVa 10361 自动作诗机
  12. deviceOrientation简介
  13. Spring AOP基础组件 Advised
  14. 代币标准--ERC1155协议源码解析
  15. 云技术入门指导:什么是云计算技术,云技术用什么语言开发
  16. windows num_workers
  17. uniapp页面导出pdf
  18. 宋朝名画“虎戴VR”,在外网火了
  19. uva 12627 Erratic Expansion
  20. (毕业设计资料)基于51单片机的公交自动报站系统

热门文章

  1. HDU 2573 HDOJ 2573 Typing ACM 2573 IN HDU
  2. Linux基础笔记_01
  3. 推荐3款 Docker 认证的实用免费插件,帮助您快速构建云原生应用程序!
  4. 知乎完成 2.7 亿美元 E 轮融资 加速建设全民知识内容平台(附周源全员邮件全文)...
  5. 并发编程之 锁的优化有哪些
  6. 第3章 NFS基本应用
  7. 蚂蚁金服高级技术专家徐红星 :蚂蚁金服大数据开放式创新实践
  8. MFC消息映射的定义
  9. PHP安装包中VC9和VC11的含义
  10. Android应用程序键盘(Keyboard)消息处理机制分析(8)