这样写也不会变啊
t = ('a', 'b', 'A', 'B')
print t
为什么?
t = ('a', 'b', 'A', 'B')
print t
为什么?
2015-02-05
t = ('a', 'b', ['A', 'B']) print t l= t[2]; l[0]='x'; l[1]='y'; print t;
结果:
('a', 'b', ['A', 'B']) ('a', 'b', ['x', 'y'])
但是要修改成:
t = ('a', 'b', ('A', 'B'))
print t
l= t[2];
l[0]='x';
l[1]='y';
print t;
结果会报错,
File "./3363/Q2q/index.py", line 1SyntaxError: Non-ASCII character '\xef' in file ./3363/Q2q/index.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
因为t = ('a', 'b', ['A', 'B'])第三个元素是可变的,改成t = ('a', 'b', ('A', 'B'))第三个元素就是不可变的了,所以报错。
举报