天天看点

4.27 每日小三练

1:Python range 函数

语法:range(start, stop[, step])

start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);

stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5

step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

问题:a = range(10),a[::-3] 的结果是 ____

9 6 3

2:what gets printde() ?

kvps = {"1":1,'2':2} 

theCopy = kvps.copy() 

kvps["1"] = 5 

sum = kvps["1"] + theCopy["1"] 

print sum 

A.  1

B.  2

C.  6

D.  10

E.  An execption is thrown

C(字典的浅拷贝,只拷贝父对象,即theCopy拷贝了kvps,kvps改变表面时,theCopy不相对应改变)

3:将列表按照下列规则排序

正数在前,负数在后;正数从小到大;负数从大到小

例子:

排序前:[7,-8,5,4,0,-2,-5]

排序后:[0, 4, 5, 7, -2, -5, -8]

list=[7,-8,5,4,0,-2,-5]
list=sorted(list,key=lambda x:(x<0,abs(x)))   #一个一个对值进行比较
print(list)