创建一个变量的副本以及反转字符串(或list等等)

2015-06-28  本文已影响127人  Closears

当你在Python中执行以下语句时:

s = [1, 2, 3, 4, 5]
l = s
l.append(6)
print(l)
print(s)

输出的结果是:

[1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5, 6]

原因就是,l = s这行代码并没有把s的副本拷贝给l,而是把s引用(可以理解为地址)拷贝给了l,也就是说,l变量和s变量现在指向了同一个地方——内存中的[1, 2, 3, 4, 5]
这一特性来自于Python语言本身。

那么问题来了:我们需要创建某一个变量的副本,该怎么做呢?

代码如下

l = s[:] # 注意这句代码的写法,这就是技巧啦~\(≧▽≦)/~
l.append(6)
print(l)
print(s)

输出的结果是:

[1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5]

接下来,反转字符串:
直接上代码

s = 'Hello world'
print(s[::-1])

输出如下:

dlrow olleH

总结:这两个技巧很简单,但是比较实用,希望能在实际编程中帮到大家!

上一篇下一篇

猜你喜欢

热点阅读