列表的使用

1、请问这个函数有多少个参数?

def MyFun((x,y), (a, b)):

      return x * y - a * b

# 这个函数有0个参数,因为函数参数是可变的,题中的参数是两个元组
2、下面代码会输出什么?
def f(x,l=[]):
    for i in range(x):
        l.append(i*i)
    print (l)
f(2)            # [0,1]
f(3,[3,2,1])    # [3,2,1,0,1,4]
f(3)            # [0,1,0,1,4]
3、列表的sort方法和sorted的区别是什么?试举例说明。
list1 = [9,1,3,5,4,2,0]
list1.sort() # 列表内容顺序输出
print(list1)

list2 = ["A","C","B"] # 列表内容顺序输出
b = sorted(list2) 
print(list2)
print(b)

"""
sort()方法是在原有的列表基础上进行排序,无返回值
sorted()方法是返回一个新的列表,而不是在原有的列表上进行排序 
"""
4、现有一个由100以内所有偶数组成的列表,将列表中所有能被4和6整除的数去除
# 方法一

list1 = []
for i in range(0,101):
    if i % 2 == 0:
        list1.append(i)
for i in list1:
    if i % 4 == 0:
        list1.remove(i)
for i in list1:
    if i % 6 == 0:
        list1.remove(i)           
        
print(len(list1))

# 方法二
list1 = [i for i in range(0,101) if i % 2 == 0 and i % 4 != 0 and i % 6 != 0]
print(list1)
5、尝试用两个方式,分别用一行语句实现去除了中的相同项,将结果存放在l2列表中
# 方法一
l1 = ['b','c','d','b','c','a','a']
l2 = list(set(l1))
print(l2)

# 方法二
l1 = ['b','c','d','b','c','a','a']
l2 = []
[ l1[i] for i in range(len(l1)) if l1[i] not in l1[:1]]
print(l2) 
6、编写一个函数满足以下功能:

计算打印所有参数的和乘以基数(base=3)的结果
# 方法一
def sum1(*number,base=3):
    res = sum(number)*base
    return res
print(sum1())

# 方法二
def sum(*arg,base=3):
    s = 0
    for i in arg:
        s += i
    s *= base
    return s
print(sum())

 

def sum(*arg,base=3):    s = 0    for i in arg:        s += i    s *= base    return sprint(sum(4,5,6))

posted @ 2018-12-11 20:23  王禹鑫  阅读(129)  评论(0编辑  收藏  举报