1、编写装饰器,为函数加上统计时间的功能

import time
def Decoration(func):
def Timmer():
# 开始时间
Start = time.time()
func()
End = time.time()
return Start - End
return Timmer @Decoration
def func1():
time.sleep(0.5)
print('hello')
return

答案

2、编写装饰器,为函数加上认证的功能;

这个题目一点思路都没有,也没办法确定出题者倒底是想让我干啥,日后再回过头来看看吧

3、写函数,传入一个参数n,返回n的阶乘

def func1(num):
Num = 1
for i in range(1,num+1):
Num *= i
return Num

4、有如下函数,你可以任意添加代码,用两种或以上的方法,执行inner函数.

def wrapper():
def inner():
print(666)
wrapper()
# 方式1
def wrapper():
def inner():
print(666)
inner()
wrapper() # 方式2
def wrapper():
def inner():
print(666)
return inner
inner = wrapper()
inner()

答案

5、相关面试题

def calc(a,b,c,d=1,e=2):
return (a+b)*(c-d)+e

示例代码

1、请分别写出下列标号代码的输出结果,如果出错请写出Error。

print(calc(1,2,3,4,5))
print(calc(1,2))
print(calc(e=4,c=5,a=2,b=3))
print(calc(1,2,3))
print(calc(1,2,3,e=4))
print(calc(1,2,3,d=5,4))

2、下面代码打印的结果分别是 list1=? ,list2=? ,list3=?.

def extendList(val,list=[]):
list.append(val)
return list
list1 = extendList(10)
list2 = extendList(123,[])
list3 = extendList('a')
print('list1=%s'%list1)
print('list2=%s'%list2)
print('list3=%s'%list3)
def calc(a,b,c,d = 1,e = 2):
return (a+b) * (c-d) + e print(calc(1,2,3,4,5))
#
print(calc(1,2))
# miss error
print(calc(e=4,c=5,a=2,b=3))
#
print(calc(1,2,3))
#
print(calc(1,2,3,e=4))
#
print(calc(1,2,3,d=5,4))
# SyntaxError

答案-1

def extendList(val,list=[]):
list.append(val)
return list
list1 = extendList(10)
# [10]
list2 = extendList(123,[])
# [123]
list3 = extendList('a')
# [10, 'a']
print('list1=%s'%list1)
# list1=[10,'a']
print('list2=%s'%list2)
# list2=[123]
print('list3=%s'%list3)
# list3=[10,'a']

答案-2

老男孩Python全栈学习 S9 日常作业 011的更多相关文章

  1. 老男孩Python全栈学习 S9 日常作业 006

    1.使用循环打印以下效果: 1: * ** *** **** ***** 2: ***** **** *** ** * 3: * *** ***** ******* ********* for i i ...

  2. 老男孩Python全栈学习 S9 日常作业 012

    1.斐波那契数列用递归实现:问第n个斐波那契数是多少 def fbnq(n): if n == 0 or n == 1: return 1 else: return fbnq(n-1)+fbnq(n- ...

  3. 老男孩Python全栈学习 S9 日常作业 008

    1.有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合 pythons={'alex','egon','yuanhao','wupeiq ...

  4. 老男孩Python全栈学习 S9 日常作业 010

    1.写函数,接收n个数字,求这些参数数字的和. def func1(*Num): num = 0 for i in Num: num += i return num 2.读代码,回答:代码中,打印出来 ...

  5. 老男孩Python全栈学习 S9 日常作业 001

    1.简述变量命名规范 必须以字母.数字.下划线命名,且不能以数字开头 不能是python的关键字 不能以中文或者拼音作为变量名 命名格式推荐以驼峰式或者下划线连接命名 区分大小写 要有意义,具有可描述 ...

  6. 老男孩Python全栈学习 S9 日常作业 013

    1.写一个求正方形周长和面积的类 class perimeter: def __init__(s,long): s.long = long def Perimeter(s): print((s.lon ...

  7. 老男孩Python全栈学习 S9 日常作业 009

    1.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. def func1(List): List2 = [] for num in range(len(Li ...

  8. 老男孩Python全栈学习 S9 日常作业 007

    1.把列表中所有姓周的人的信息删掉 lst = ['周老二', '周星星', '麻花藤', '周扒皮'] lst = ['周老二', '周星星', '麻花藤', '周扒皮'] lst2 = [] fo ...

  9. 老男孩Python全栈学习 S9 日常作业 005

    1.有如下变量,请实现要求的功能 tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age& ...

随机推荐

  1. 安装Docker时错误提示 "could not change group /var/run/docker.sock to docker: group docker not found"的解决方案

    安装Dock服务,主要命令是  yum install docker. 但是在启动的时候报错:warning msg="could not change group /var/run/doc ...

  2. django apscheduler在特定时间执行一次任务(run at a specify time only once)

      如何使程序在特定时间只执行一次,我查了一下. celery可以,时间以秒计. task = mytask.apply_async(args=[10, 20], countdown=60) 不过,我 ...

  3. C# 霍尼韦尔扫码枪扫码打印

    程序运行背景条件: 1.将扫码枪调制串口驱动模式 2.将扫码枪所在串口拆分成几个虚拟串口 3.扫码枪扫描条码就打印条码 4.WinForm程序 条码控件使用 DevExpress.XtraEditor ...

  4. windows压缩图片

  5. June 28th. 2018, Week 26th. Thursday

    You cannot change the circumstances but you can change yourself. 既然改变不了环境,那就改变自己. From Jim Rohn. Rec ...

  6. Command "python setup.py egg_info" failed with error code 1 in C:\Users\w5659\AppData\Local\Temp\pip-install-t7uomu4r\xa dmin\

    Error msg: C:\Users\w5659>pip install xadmin Collecting xadmin Using cached https://files.pythonh ...

  7. bboss oreach循环嵌套遍历map

    foreach循环嵌套遍历mapforeach嵌套dsl脚本定义 <property name="dynamicInnerDsl"> <![CDATA[{ ## ...

  8. 编译安装MySQL5.6失败的相关问题解决方案

    Q0:需要安装git 解决方案: #CentOS yum install git #ubuntu apt-get install git Q1:CMAKE_CXX_COMPILER could be ...

  9. Ajax 的优势和不足

    Ajax 的优势 1. 不需要插件支持 Ajax 不需要任何浏览器插件,就可以被绝大多数主流浏览器所支持,用户只需要允许 JavaScript 在浏览器上执行即可. 2. 优秀的用户体验 这是 Aja ...

  10. Flask--特殊装饰器, CBV, 三方组件

    一. Flask中的特殊装饰器 before_request # before_request 是在视图函数执行之前执行的 @app.before_request def before(): prin ...