解释列表值转换

时间:2012-11-05 23:11:50

标签: python list python-3.x

x = [1, 2, 3]
y = x

x[1] = 'AB'
y[1] = y[1][0]

print(x, y)
>>>
[1, 'A', 3] [1, 'A', 3]

我们将'AB'值分配给x list的索引1,因此y list也获得此值。然后我们将y [1] [0]值赋给y [1],但y [1] [0]符号是什么意思?

5 个答案:

答案 0 :(得分:4)

y[1]是列表中的第二项,即“AB”,它是一个字符串。由于字符串允许您使用索引访问其值,y[1][0]只是字符串'AB'中的第一项,即'A'。

请参阅an introduction to Python's strings和切片表示法。

答案 1 :(得分:0)

val = y[1][0] 可以获得与

相同的结果
 

tmp = y[1]
val = tmp[0]

答案 2 :(得分:0)

x[1] = "AB"也指定y[1] = "AB",因为x和y是相同的列表

y[1] = "AB"因此y[1][0] = 'A'

看看这是否有帮助

x = [1, 2, 3]
y = x

print "Y",y
print "X",x
x[1] = 'AB'
print "Y[1]",y[1]
print "Y[1][0]",y[1][0]
y[1] = y[1][0]

答案 3 :(得分:0)

这是一片切片。

>>>a = ["a", ["b", ["c"]]]
>>> print a[1][1][0]
'c' 

答案 4 :(得分:0)

行前

y[1] = y[1][0]

y [1]等于'AB'

和'AB'[0]等于'A',表示字符串'AB'的第0位字母为'A'。

因此,当您将y [1]指定给y [1] [0]时,您将其指定为“A”。