在Python中,字符串被认为是列表吗?
1815 2022-01-08 09:21
在几乎所有语言中,字符串实际上都是字符列表,所以是的,从这个意义上说,字符串就是列表。但是,字符串是它们自己的实体。它们有自己的方法,并且不是所有的列表方法都可以用于字符串。然而,有一个重叠。您可以像列表一样对字符串进行切片、迭代和连接,甚至可以使用一些列表方法(即len
和index
)。但是,最大的区别是Python中的字符串是不可变的。用一个列表你可以做my_list[5] = "a"
。如果您用一个字符串来尝试,您将收到一个TypeError
。你知道吗
编辑:
正如在另一个答案的评论中提到的,不变性可能不是最大的区别(这是一个意见问题),但我在其他地方没有看到提到的是列表可以是多维的。虽然你可以很容易地得到一个二维、三维甚至四维的列表,但是类似的事情在字符串中是不可能的(尽管可以说my_list = ["foo", "bar"]
可以被看作是多维的,因为你可以调用my_list[1][2]
,它不仅仅是一个字符串,它是字符串和列表的组合)。如果有人能像你一样写出“一串串串”,我会印象深刻
全部评论