python20181211作业7

1.以下程序输出结果是什么
a = 1
def fun(a):
    a = 2
fun(a)
print (a)  
 
a = []
def fun(a):
    a.append(1)
fun(a)
print(a)

输出结果:  
     
1 [1] 2.请简要说明什么是类变量,什么是实例变量,并观察以下程序的输出结果 class Person: name="aaa" p1=Person() p2=Person() p1.name="bbb" print(p1.name) print(p2.name) print(Person.name) 输出结果:
bbb aaa aaa
4.阅读下面的代码,写出A0,A1至An的最终值。 A0 = dict(zip(('a','b','c','d','e'),(1,2,3,4,5))) A1 = range(10) A2 = [i for i in A1 if i in A0] A3 = [A0[s] for s in A0] A4 = [i for i in A1 if i in A3] A5 = {i:i*i for i in A1} A6 = [[i,i*i] for i in A1] 打印结果如下: A0 {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} A1 range(0, 10) A2 [] A3 [1, 2, 3, 4, 5] A4 [1, 2, 3, 4, 5] A5 {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81} A6 [[0, 0], [1, 1], [2, 4], [3, 9], [4, 16], [5, 25], [6, 36], [7, 49], [8, 64], [9, 81]] 5.你如何管理不同版本的代码? 答:用Git管理不同版本代码。 6.下面代码会输出什么: def f(x,l=[]): for i in range(x): l.append(i*i) print(l) f(2) f(3,[3,2,1]) f(3) 输出结果:
[0,
1] [3, 2, 1, 0, 1, 4] [0, 1, 0, 1, 4] 7.这两个参数是什么意思:**args,**kwargs?我们为什么要使用它们? 答: **args是非关键字参数,用于元组。 **kwargs是关键字参数,用于字典。 8.阅读下面的代码,它的输出结果是什么? class A(object): def go(self): print "go A go!" def stop(self): print "stop A stop!" def pause(self): raise Exception("Not Implemented") ​ class B(A): def go(self): super(B, self).go() print "go B go!"class C(A): def go(self): super(C, self).go() print "go C go!" def stop(self): super(C, self).stop() print "stop C stop!"class D(B,C): def go(self): super(D, self).go() print "go D go!" def stop(self): super(D, self).stop() print "stop D stop!" def pause(self): print "wait D wait!" class E(B,C): pass a = A() b = B() c = C() d = D() e = E() ​ # 说明下列代码的输出结果 ​ a.go() b.go() c.go() d.go() e.go() ​ a.stop() b.stop() c.stop() d.stop() e.stop() ​ a.pause() b.pause() c.pause() d.pause() e.pause() 9.请写出一段Python代码实现删除一个list里面的重复元素 10.单引号,双引号,三引号的区别 答:单引号和双引号都是用来表示字符串,三引号可以用来表示字符串和用来注释,三引号里用\n换行表示换行。

猜你喜欢

转载自www.cnblogs.com/kkww/p/10129279.html