Python序列:字符串,列表和元组(一)

本文介绍Python中的序列类型,包括字符串、列表和元组。字符串是不可变序列,支持索引和切片操作,以及链接、重复等操作。列表是可变序列,可以使用下标赋值。内建函数如`list()`、`str()`和`tuple()`用于序列类型转换。文章详细讨论了字符串的特性,如格式化操作符、字符串模板、Unicode等,并列举了一些内建函数的使用示例。
摘要由CSDN通过智能技术生成

Python序列

Python中有一些类型,它们的 成员有序排列,可以通过下标来访问,这种类型统一被称为序列,包括列表,字符串,数组。其中字符串和元组属于不可变类型,即无法通过下标来赋值。如a[0]=’1’,而列表属于可变类型,可以通过下标来赋值。这篇帖子主要讲字符串,列表和元组在后面的帖子再讲。

1 序列

序列类型有着相同的访问模式:它的每一个元素可以通过指定一个偏移量的方式得到。而多个元素可以通过切片操作的方式一次得到。

1.1 标准类型操作符

Python中的标准类型操作符,即算术操作符、比较操作符、逻辑操作符,可以用作序列类型。

1.2 序列类型操作符

Python中对序列都适用的操作符,有:

成员关系操作符: in, not in
obj in seq,判断obj是否在seq中

链接操作符: +
把一个序列和另一个相同类型的序列做连接
seq1 + seq2

重复操作符: *

seq * int_num

可以获得一个序列的拷贝

>>> a
['2', '2']
>>> a*2
['2', '2', '2', '2']

切片操作符: [],[:],[::]

用索引来获取序列类型的某个元素,或者指定开始或者结束元素,用来获取一段连续的元素。

1.3 内建函数

内建函数list(), str(),和tuple()被用做在各种序列类型之间转换。你可以把它们理解成其它语言的类型转换,但是不是真正的类型转换,因为会将元素值的索引赋值给新创建的元素,也就是说,list()等函数返回值的元素地址,和list()传入参数的返回值地址相同,即使是不同类型之间的转换(浅拷贝)!比如:

>>> a
['2', '2']
>>> b = str(b)
>>> b
"['2', '2']"
>>> id(a[0])
139874793120072
>>> id(b[2])
139874793120072

可以看到a中的元素第一个2和b中元素的第一个2,内存地址相同!

还有一些可操作函数:
enumerate(iter)
len(seq)
max(iter,key=None)
min(iter, key=None)
reversed(seq)
sorted(iter, func=None, key=None, reverse=False)
sum(seq, init=0)
zip([it0, it1,… itN])

等等,后面会提到。

2 字符串

Python里,用单引号或者双引号来表示一个字符串,可以用索引来访问每一个元素,包括切片。
删除字符串:可以通过给字符赋值空值或者用del关键字

>>> a = 'asdf'
>>> del a
>>> a
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'a' is 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值