#一个函数何以接受多个参数#无参数#show(): ---> 执行:show() #传入一个参数 def show(arg): print(arg) #执行 show(123) #传入两个参数 def show(arg,aaa): print(arg,aaa) #执行 show(123,'bbb') #函数的默认参数#设置一个默认参数为:999 def show(a1,a2=999): print(a1,a2) #执行 show(111,') show(111) #说明:第二个参数a2 指定了默…
在C++语言中,可以设置函数形参的默认值,在调用函数时,若明确给出了实参的值,则使用相应实参的值;若没有给出相应实参的值,则使用默认的值.这将为函数调用带来方便和灵活. [示例] #include<iostream> using namespace std; int max(int x = 70, int y = 60, int z = 50) { int m; if (x > y) m = x; else m = y; if (z > m) m = z; return m; }…
1. 函数的嵌套与nonlocal 声明局部变量 # ### 函数的嵌套 """ 函数和函数之间可以互相嵌套: 嵌套在内层的叫做内函数 乔涛在外层的叫做外函数 """ def outer(): def inner(): print("我是inner函数 ... ") inner() # (1)内部函数可以直接在函数外部调用么 不行 # inner() # (2)调用外部函数后,内部函数可以在函数外部调用吗 不行 # outer…
s1 = "{0} ===> {1}" s = s1.format('lilei', 'boy') print(s) l = ['lilei', 'boy'] s = s1.format(*l) print(s) s1 = "{name} ===> {acter}" s = s1.format(name='lilei', acter='boy') print(s) d = {'name':'lilei', "acter":'boy'}…
一.深浅拷贝 import copy #浅拷贝 n1={'k1':'wu','k2':123,'k3':['carl',852]} n2=n1 n3=copy.copy(n1) print(id(n1)) print(id(n2)) print(id(n3)) print(id(n1['k3'])) print(id(n3['k3'])) #深拷贝 n4=copy.deepcopy(n1) print(id(n4)) print(id(n1['k3'])) print(id(n4['k3']))…
1.拷贝 字符串和数字.赋值 id一样 import copy #提供拷贝功能 copy.copy() #原来的和现在的一起修改,不用修改时用浅copy,节省内存,复制最外层 copy.deepcopy() #只修改现在的,复制所有,除最内层 2.集合 1).无序且不重复的集合2).访问速度快3).天生解决重复问题 s=set() #创建空集合专用 s={,,,} s1=set(['alex','eric','tony']) #转换:可以是元组.列表.字符串 s1.add('alll') #增加…
Kotlin函数: 关于Kotlin函数在之前也一直在用,用fun来声明,回忆下: 下面再来整体对Kotlin的函数进行一个学习. 默认参数(default arguments): 先来定义一个函数: 相比java不一样的就是可以给参数增加默认参数,如下: 接一来调用一下该函数: 接下来还可以这样调用: 运行一下: 不过还有一个显示指定参数的方式,这样可读性比较强: 当然还可以都传啦: 其中上面调用两个参数的这个写法可以简化为: 当然还可以正常的调用: 可见相比Java,Kotlin对于函数提供…
参考<21天学通C++>第21与第22章节,对函数对象进行介绍,同时通过lambda表达式这一匿名函数对象的简洁方式加深对函数对象的理解.本篇博文的主要内容是: (1) 函数对象的概念: (2) 将函数对象用作谓词: (3) 如何使用函数对象实现一元.二元谓词: (4) 如何编写lambda表达式: (5) 如何将lambda表达式用作谓词: (6) 如何编写可存储和可操作状态的lambda表达式. 一. 函数对象 1. 函数对象的概念和种类 函数对象是C++实体,从概念上讲,函数对象是用作函…
阅读g2log时,发现有两行代码居然看不懂. 1. auto bg_call =  [this, log_directory]() {return pimpl_->backgroundChangeLogFile(log_directory);}; 2. auto bg_call = [&]() {return pimpl_->backgroundFileName();}; https://zh.wikipedia.org/wiki/%E5%8C%BF%E5%90%8D%E5%87%BD…
C++11 新特性:Lambda 表达式 豆子 2012年5月15日 C++ 10条评论 参考文章:https://blogs.oracle.com/pcarlini/entry/c_1x_tidbits_lambda_expressions 或许,Lambda 表达式算得上是 C++ 11 新增特性中最激动人心的一个.这个全新的特性听起来很深奥,但却是很多其他语言早已提供(比如 C#)或者即将提供(比如 Java)的.简而言之,Lambda 表达式就是用于创建匿名函数的.GCC 4.5.x 和…