美文网首页
青少年编程 - python函数基础知识点提问

青少年编程 - python函数基础知识点提问

作者: 英俊叔叔 | 来源:发表于2022-05-28 10:51 被阅读0次

函数相关题目

1. 观察下面程序,回答一些问题:

a=0

def Func(n):
    global a
    a=a+1
    if n==0:
        return 0
    elif n==1:
        return 1
    else:
        return Func(n-1)+Func(n-2)

print(Func(3)) #1
print(a) #2
print(Func(4)) #3
print(a) #4
  1. def 是什么意思?
  2. return 是什么意思?
  3. Func 是什么?后面为什么要加括号?括号中的 n 是什么,这个 n 从哪获得值?
  4. 这个程序完成什么功能?用到了什么方式代替循环?
  5. 函数 Func() 什么时候停止递归?
  6. global 这个单词是什么意思?它写在函数里完成了什么功能?
  7. 这个程序中 #1 句运行时函数 Func() 被调用了多少次?#2 的输出结果时什么?
  8. 这个程序中 #3 句运行时函数 Func() 被调用了多少次?#4 的输出结果是什么?

2. 观察下面程序,回答一些问题:

def Func(n):
    a=1
    b=1
    c=0
    i=3
    while i<=n:
        c=a+b
        a=b
        b=c
        i=i+1
    return c

print(Func(5))
  1. 这个程序的 Func() 函数完成什么功能?
  2. 变量的 a,b,c,i 分别完成什么功能?
  3. 变量 i 为什么从3开始
  4. while循环的起始值,终止值,步长分别是什么?

3. 观察下面程序,回答一些问题:

a=[1,2]
for i in range(2,20):
    c=a[i-1]+a[i-2]
    a.append(c)
print(a[19])
print(a)
print(len(a)) #1
  1. 这个程序完成什么功能?
  2. append 这个函数完成什么功能?
  3. 列表a存储的是什么内容?
  4. 如果要求斐波那契数列的第一百项是什么,用这种方式计算时 #1 会打印什么?

4. 观察下面程序,回答一些问题:

def Func(a=4,b=5):
    print(a,b)

Func(1,2)  #1
Func(10)   #2
Func(b=10) #3
Func(a=10) #4
  1. 函数 Func() 括号里的等号表示什么意思?默认值是什么意思?
  2. #1 #2 #3 #4 的输出分别是什么?

5. 元组及函数参数带星的使用:

  1. 元组和列表相似,差异在于元组不能被修改内容
  2. 某个形参前面加一个星号,调用时按位置匹配不带星号的形参和实参,多余的实参都将作为一个元组的元素保存到星号对应的形参中。
    例子程序:
def foo(param1, *param2):
    print (param1)
    print (param2)
foo(1,2,3,4,5)

程序一:

def sum_func(*t): #1
    sm = 0
    for i in t:
        sm += i
    return sm
print(sum_func(1,2,3,7,4,5,6))

程序二:

def sum_func(t): #2
    sm = 0
    for i in t:
        sm += i
    return sm
n=[1,2,3,7,4,5,6]
print(sum_func(n))
  1. #1 中的*号是什么作用,t是什么,这时传入的参数有几个?
  2. #2 中的t是什么,传入参数有几个?
  3. 程序一和程序二中的函数 sum_func 完成什么功能?请详细描述一下
  4. 如果想要编写一个函数,计算一个列表a=[256,231,248,291]中所有元素中最大的值并返回,这个程序应怎样编写?
  5. 观察上面程序,说出元组这种数据形式和列表有什么不同(说出一个最重要的不同点)?

6. 下面程序完成什么功能?

说出打印的是什么即可

q = [1,2,3,4,5,6,7]
def jishu_list(t,li = []):
    n = 1
    for i in t:
        if n%2 == 1:
            li.append(i)
        n += 1
    return li
print(jishu_list(q))

7. 下面程序完成什么功能?

说出打印的是什么即可

def func(t):
    if len(t)>2:
        t = t[0:2]
        return t
    else:
        return t
print(func([1,2,3,4]))
print(func([1,2]))

8. 下面程序完成什么功能?

说出打印的是什么即可

s = 'asdfasf'
def Func(l):
    shuzi = 0
    zimu = 0
    kongge = 0
    qita = 0
    for i in l :
        if i.isdigit():
            shuzi +=1
        elif i.isalpha():
            zimu +=1
        elif i.isspace():
            kongge +=1
        else:
            qita +=1
    return shuzi,zimu,kongge,qita
print(Func(s))

什么是字典及字典的使用

a={'zhangsan':100,'lisi':200,'wanger':300,'yuliu':400}
aab={'cde':500}
a.update(aab)
print(a['cde'])
# b=[1,2,3]
# c=10
# d="string"
# a['zhangsan']=50
# print(type(a))
# print(type(b))
# print(a['zhangsan'])

观察上面的程序,请同学们说出字典这种数据格式和列表的两个不同

相关文章

网友评论

      本文标题:青少年编程 - python函数基础知识点提问

      本文链接:https://www.haomeiwen.com/subject/nojiprtx.html