Python 结构化一维序列使用方法
Python提供了多种类型的序列,包括一维序列和多维序列。本文将重点介绍Python的一维序列及其使用方法。
Python中的一维序列类型包括:列表(list)、元组(tuple)、字符串(string)、字节数组(bytearray)等。它们都是有序的、可以存储任何数据类型的元素的数据结构。这些类型的区别主要在于它们的创建方式、可变性、索引方式、切片方式等方面。
列表(list)
列表是Python中最常用的数据类型之一,它用一对方括号[]表示,列表中的元素用逗号隔开,并且可以存储任何数据类型的元素。
创建列表的方式如下:
# 创建一个空列表
my_list = []
# 创建一个带有元素的列表
my_list = [1, 2, 'hello', [3, 4]]
列表的元素可以通过下标进行索引,下标从0开始,也支持负数下标表示倒数第n个元素。示例代码如下:
my_list = ['a', 'b', 'c', 'd']
print(my_list[0]) # a
print(my_list[-1]) # d
列表的元素可以通过切片进行获取,切片语法为[start:stop:step]
,其中start表示开始位置(默认为0),stop表示结束位置(默认为列表长度),step表示步长(默认为1)。示例代码如下:
my_list = ['a', 'b', 'c', 'd']
print(my_list[1:3]) # ['b', 'c']
print(my_list[::2]) # ['a', 'c']
元组(tuple)
元组和列表类似,但是元组一旦被创建就不能再被修改,它用一对圆括号()表示,元素之间也用逗号隔开。
创建元组的方式如下:
# 创建一个空元组
my_tuple = ()
# 创建一个带有元素的元组
my_tuple = (1, 2, 'hello', (3, 4))
元组的元素同样可以通过下标进行索引,下标从0开始,也支持负数下标表示倒数第n个元素。示例代码如下:
my_tuple = ('a', 'b', 'c', 'd')
print(my_tuple[0]) # a
print(my_tuple[-1]) # d
元组也可以使用切片语法获取元素,示例代码如下:
my_tuple = ('a', 'b', 'c', 'd')
print(my_tuple[1:3]) # ('b', 'c')
字符串(string)
字符串是Python中存储文本信息的一种数据类型,它用单引号、双引号或三引号表示,其中三引号可以用来表示多行字符串。
创建字符串的方式如下:
# 单引号表示的字符串
my_string = 'hello world'
# 双引号表示的字符串
my_string = "hello world"
# 多行字符串
my_string = '''hello
world'''
字符串的元素同样可以通过下标进行索引,下标从0开始,也支持负数下标表示倒数第n个元素。示例代码如下:
my_string = 'hello'
print(my_string[0]) # h
print(my_string[-1]) # o
字符串同样支持切片语法,示例代码如下:
my_string = 'hello'
print(my_string[1:3]) # el
字节数组(bytearray)
字节数组和字符串类似,但是字节数组是可变类型,它用bytearray()函数进行创建,其中可以指定字符串的编码方式。
创建字节数组的方式如下:
my_bytes = bytearray('hello', 'utf-8')
字节数组的元素同样可以通过下标进行索引,示例代码如下:
my_bytes = bytearray('hello', 'utf-8')
print(my_bytes[0]) # 104
print(my_bytes[-1]) # 111
字节数组同样支持切片语法,示例代码如下:
my_bytes = bytearray('hello', 'utf-8')
print(my_bytes[1:3]) # b'el'
总结
Python的一维序列包括列表、元组、字符串、字节数组等类型,它们都具有索引、切片等功能,但是它们在创建方式、可变性等方面存在差异,需要根据具体的应用场景进行选择。