我在做与列表相关的问题,偶然发现了这段代码
l = [1,2,3,4,5]
a = str(l)[1:-1]
b = l[1:-1]
为什么变量a
打印了整个列表?
答案 0 :(得分:2)
当您在python中将列表转换为字符串时,它将返回带有括号“ []”的元素,因此
a = str(l)
将给出a ='[1、2、3、4、5] 并且当您获得从1st到-1st索引的子字符串时,它将为您提供所有没有括号的元素,因为您将它们截断了。
答案 1 :(得分:1)
str(list)
返回列表[1, 2, 3, 4, 5]
的可打印形式。
[1:-1]
删除字符串的第一个和最后一个索引,即[
和]
。
因此变量a现在为1, 2, 3, 4, 5
,它是一个字符串,而不是数字列表。
答案 2 :(得分:0)
因为它将列表l强制转换为字符串,然后删除了第一个和最后一个字符,即“ [”和“]”。