还记得上一讲,我们说了字符串和列表以及元组的一些共同点,并且统称为序列,而且介绍了一些实用的内置函数。
今天,我们再来讲一下小伙伴们最感兴趣的函数——Python的乐高积木
1)我们写程序就是为了实现某一个功能,而我们的函数就是实现某一块小小功能的代码块,先看一下例子吧:
>>> def First_practice():
print('这是我创建的第一个函数!')
print('不过看起来这个函数好像没有什么功能!')
>>> First_practice()
这是我创建的第一个函数!
不过看起来这个函数好像没有什么功能!
我们用def关键字来创建一个函数,并且函数名称后面一定要有一个括号以及冒号:
后面的第二个例子是调用我们的函数,如果我们在调用函数之前没有定义这个函数,那么肯定会报错
讲到这里,一些小伙伴们可能已经知道我们的括号里面放的是什么了?没错,就是参数,加上参数有什么好处呢,没错,加上参数后,我们的函数就是可变的了,显得更加人性化:
>>> def Second_practice(name):
print(name + '我爱你!')
>>> Second_practice('大幂幂')
大幂幂我爱你!
我们的参数的个数并没有限制,想多少都可以:
>>> def submit(agree,accept):
result = agree + accept
print(result)
>>> submit('同意','结婚')
同意结婚
我们的函数还是能返回值的:
>>> def return_says(says):
says = input('请输入您想说的话!')
return(says)
>>> return_says('Hello')
请输入您想说的话!
''
>>> return_says('hello')
请输入您想说的话!hello
'hello'
2)函数灵活且强大,这里我们先介绍一下函数参数的类型:
①函数的参数分为形参(parameter)和实参(argument)
>>> def your_number(name):
'你好呀!小姐姐!'
print('你能把你的联系方式告诉我吗?')
这里的函数定义过程中的name就是形参(只有一个形式,占据一个参数位置),我们调用函数的时候传进来的name值才是我们的实参,它有具体的参数值
②函数文档:大家注意到没,刚才定义的那个函数:your_number(name),里面是有一句话的,这个就是我们的函数文档,那我们怎么做才能把这句话给打印出来呢?
主要有下面几种方式:
__doc__打印出文档内容:
>>> your_number('hello').__doc__
你能把你的联系方式告诉我吗?
help():打印文档内容:
>>> help(your_number('hello'))
你能把你的联系方式告诉我吗?
Help on NoneType object:
class NoneType(object)
| Methods defined here:
|
| __bool__(self, /)
| self != 0
|
| __repr__(self, /)
| Return repr(self).
|
| ----------------------------------------------------------------------
| Static methods defined here:
|
| __new__(*args, **kwargs) from builtins.type
| Create and return a new object. See help(type) for accurate signature.
print.__doc__也是可以的:
>>> print.__doc__
"print(value, ..., sep=' ', end='\\n', file=sys.stdout, flush=False)\n\nPrints the values to a stream, or to sys.stdout by default.\nOptional keyword arguments:\nfile: a file-like object (stream); defaults to the current sys.stdout.\nsep: string inserted between values, default a space.\nend: string appended after the last value, default a newline.\nflush: whether to forcibly flush the stream."
③关键字参数——这样做的意义就是在于顺序不会颠倒,看一下例子:
>>> def Say_What(name,words):
print(name + 'says' + words)
>>> Say_What('毛泽东','说一切不以结婚为目的的谈恋爱都是耍流氓!')
毛泽东说一切不以结婚为目的的谈恋爱都是耍流氓!
这样貌似没有问题,我们再来看一下这个:
>>> Say_What('不想当将军的士兵不是好士兵','拿破仑')
不想当将军的士兵不是好士兵says拿破仑
所以这个时候,我们要用到关键字参数了:
>>> Say_What(words = '书是人类进步的阶梯!',name = '列宁')
列宁says书是人类进步的阶梯!
④默认参数
>>> def nothing(name = '树莓派',price = '$35'):
print(name + price)
>>> nothing()
树莓派$35
⑤收集参数:
>>> def text(*params):
print('参数的最后一个是',params[-1])
print('参数的长度是:',len(params))
>>> text(14,67,24,769,124)
参数的最后一个是 124
参数的长度是: 5
欢迎大家来看了这么多,关于Python的基础也讲了这么多,希望大家好好加油,有什么问题随时私信我,一起努力。