老师,不太理解括号中的意思print('call %s():' % func.__name__)

老师,不太理解括号中的意思print('call %s():' % func.__name__)

def log(func):
   def wrapper():
       print('call %s():' % func.__name__)
       func()
   return wrapper

@log
def hello():
   print('hello world')


def now():
   print('2019-06-02')


now()
hello()

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕美 2019-06-03 11:59:50

同学,你好,%s用于格式化字符串,func.__name__用于获取函数的名字。这里得到的是被装饰函数的名字

例:

text = "hello"
print("text = %s" % text)  # text = hello

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

  • 那func.__name__前面的那个%号是什么意思呢
    2019-10-07 17:18:06
  • 同学,你好。%s是一种字符串格式化的语法, 是将值插入到%s占位符的字符串中。将得到的func.__name__值替换掉占位时的s。即输出call hello(): 。祝学习愉快~~~~
    2019-10-09 10:02:41
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师