Python语言基础与应用 北京大学 测试章节六

1、下列关于Python中函数的说法不正确的是:结束函数时如果return语句不带表达式相当于无返回值。

有返回值None

2、下列定义函数的方法,在Python中正确的是:def (arg1,arg2,…argN)
3、list(map(lambda x:len(x),['a','12','ab123'])):[1, 2, 5]
4、

f1=lambda x:x*2
f2=lambda x:x**2
print(f1(f2(2)))

输出:8

5、

counter=1
num=0
def tset():
    global counter
    for i in (1,2,3):
        counter+=1
    num=10
tset()
print(counter,num)

输出:4,0

6、

def Sum(a,b=3,c=5):
    return sum([a,b,c])
print(Sum(8,2))

输出:15

7、

d=lambda x:x*2
t=lambda x:x*3
a=2
a=d(a)
a=t(a)
a=d(a)
print(a)

输出:24

————————
编程作业六

扫描二维码关注公众号,回复: 8680564 查看本文章

斐波拉契数列

题目内容:
这个数列从第三项开始,每一项都等于前两项之和。
已知斐波拉契数列的前两项都是1,我们定义求斐波拉契数列的第n项(n<=50)

输入格式:共一行,为一个正整数。

输出格式:共一行,为一个正整数。

def feibo(n):
    x,f1,f2,sum=1,0,1,0
    while x<n:
        Sum=f1+f2
        f1,f2=f2,Sum
        x+=1
    return Sum
n=int(input())

求两个数的最大公约数

题目内容:
输入两个正整数num1和num2(不超过1000),求它们的最大公约数并输出。

输入格式:共两行,每一行输入一个不超过1000的正整数。

输出格式:共一行,输出一个正整数。

a = int(input())
b = int(input())
if a > b:
    c = b
else:
    c = a
while c >= 1:
    if a % c == 0 and b % c == 0:
        break
    c -= 1
print(c)

求两个数的最小公倍数

a = int(input())
b = int(input())
if a > b:
    c = a
else:
    c = b
x = a * b
while c <= x:
    if c % a == 0 and c % b == 0:
        break
    c += 1
print(c)

求阶乘

输入格式:共一行,为一个小于20的正整数。
输出格式:共一行,为一个正整数。

def fact(n):
    Sum=1
    for i in range(1,n+1):
        Sum*=i
    return Sum

n=int(input())
print(fact(n))

冒泡排序

题目内容:
冒泡排序是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。

输入格式:共一行,列表中的元素值,以空格隔开。

输出格式:共一行,为一个列表。

def bubbleSort(ls):
    for j in range(len(ls)-1,0,-1):
        for i in range(j):
            if ls[i]>ls[i+1]:
                ls[i],ls[i+1]=ls[i+1],ls[i]
    return ls

alist=list(map(int,input().split()))
print(bubbleSort(alist))

列表元素筛选

题目内容:
已知输入为一个列表,列表中的元素都为整数,我们定义元素筛选函数,功能是检查获取传入列表对象的所有奇数位索引(注意列表的索引是从0开始的)对应的元素,并将其作为新列表返回给调用者。

输入格式:共一行,列表中的元素值,以空格隔开。

输出格式:共一行,为一个列表。

def foo(ls):
    lst=[]
    for i in range(1,len(ls),2):
        lst.append(ls[i])
    return lst

alist=list(map(int,input().split()))
print(foo(alist))
发布了70 篇原创文章 · 获赞 15 · 访问量 4312

猜你喜欢

转载自blog.csdn.net/Heart_for_Ling/article/details/103403610
今日推荐