码迷,mamicode.com
首页 > 其他好文 > 详细

面试题汇总

时间:2018-10-15 16:18:58      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:one   面试题   赋值   名称空间   cli   判断   img   试题   display   

1. 用一行转换a,b的值

a=1
b=2
a,b=b,a
print(a,b)

内存里存两个东西,一个是1和2的内存地址,一个是名称空间,名称空间存的是变量与值的对应关系

对应关系存的是a这个变量指向的是哪个内存地址,通过内存地址找到内容

a,b=b,a改变了对应关系

 

2. 判断类型

u1 = (1)
tu2 = (1,)
print(tu1,type(tu1))
print(tu2,type(tu2))


tu1 = ([1])
tu2 = ([1],)
print(tu1,type(tu1))
print(tu2,type(tu2))

元组  如果元组里面只有一个元素且不加逗号,那此元素是什么类型就是什么类型

3. 去重

li=[1,2,33,33,2,1,4,5,6,6]
set1=set(li)
print(set1)
li=list(set1)
print(li)

 

4. 深浅拷贝

 1. 赋值运算

技术分享图片
l1 = [1,2,3,[barry,alex]]
l2 = l1

l1[0] = 111
print(l1)  # [111, 2, 3, [‘barry‘, ‘alex‘]]
print(l2)  # [111, 2, 3, [‘barry‘, ‘alex‘]]

l1[3][0] = wusir
print(l1)  # [111, 2, 3, [‘wusir‘, ‘alex‘]]
print(l2)  # [111, 2, 3, [‘wusir‘, ‘alex‘]]
赋值

赋值运算来说,l1和l2指向同一个内存地址,所以他们是完全一样

2. 浅拷贝

技术分享图片
l1 = [1,2,3,[barry,alex]]
l2 = l1.copy()

print(l1,id(l1))  # [1, 2, 3, [‘barry‘, ‘alex‘]] 2380296895816
print(l2,id(l2))  # [1, 2, 3, [‘barry‘, ‘alex‘]] 2380296895048

l1[1] = 222
print(l1,id(l1))  # [1, 222, 3, [‘barry‘, ‘alex‘]] 2593038941128
print(l2,id(l2))  # [1, 2, 3, [‘barry‘, ‘alex‘]] 2593038941896
         
l1[3][0] = wusir
print(l1,id(l1[3]))  # [1, 2, 3, [‘wusir‘, ‘alex‘]] 1732315659016
print(l2,id(l2[3]))  # [1, 2, 3, [‘wusir‘, ‘alex‘]] 1732315659016
浅拷贝

浅拷贝来说,第一层创建的是新的内存地址,而从第二层开始,指向的都是同一个内存地址,所以,对于第二层以及更深的层数来说,保持一致性
列表里面套列表,第一层指向共同的内存,第二层指向不同内存

3. 深拷贝

技术分享图片
import copy
l1 = [1,2,3,[barry,alex]]
l2 = copy.deepcopy(l1)

print(l1,id(l1))  # [1, 2, 3, [‘barry‘, ‘alex‘]] 2915377167816
print(l2,id(l2))  # [1, 2, 3, [‘barry‘, ‘alex‘]] 2915377167048

l1[1] = 222
print(l1,id(l1))  # [1, 222, 3, [‘barry‘, ‘alex‘]] 2915377167816
print(l2,id(l2))  # [1, 2, 3, [‘barry‘, ‘alex‘]] 2915377167048

l1[3][0] = wusir
print(l1,id(l1[3]))  # [1, 222, 3, [‘wusir‘, ‘alex‘]] 2915377167240
print(l2,id(l2[3]))  # [1, 2, 3, [‘barry‘, ‘alex‘]] 2915377167304
深拷贝

深拷贝:列表里套列表,两个分别指向不同的内存地址
对于深copy来说,两个是完全独立的,改变任意一个的任何元素(无论多少层),另一个绝对不改变。

 

面试题汇总

标签:one   面试题   赋值   名称空间   cli   判断   img   试题   display   

原文地址:https://www.cnblogs.com/yangyuqing/p/9783197.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!