重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
def开头。格式:def函数名(参数):缩进函数具体的代码
专注于为中小企业提供网站设计制作、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业佳木斯免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
Python是一门开源免费、通用型的脚本编程语言,它上手简单,功能强大,坚持极简主义。
Python类库(模块)极其丰富,这使得Python几乎无所不能,不管是传统的Web开发、PC软件开发、Linux运维,还是当下火热的机器学习、大数据分析、网络爬虫,Python都能胜任。
函数是组织好,可重复使用的,用来实现相关功能的代码段
函数提高了代码的重复利用率和应用的模块性。
除Python自带的函数之外,也可以自己创建函数,叫做自定义函数
语法:
函数代码块以 def 开头
参数为 输入值 ,放于函数名后口号里面,
函数内容以冒号:开始,函数体缩进, return 返回 输出值
函数调用使用关键字参数来确定传入的参数值,此时,如果多个函数则不需要按照指定顺序。
在定义函数时,指定参数默认值。调用时如果不传入参数,则使用默认值
不定长部分如果没有指定参数,传入是一个空元组
加了 两个星号 ** 的参数会以字典的形式导入
/ 用来指明函数形参必须使用指定位置参数,不能使用关键字参数的形式。
3.8版本之后的才能使用
不使用 def 定义函数,没有函数名
lamdba主体时一个表达式,而不是代码块,函数体比def简单很多
定义在函数内部的为局部变量,仅能在函数内部使用
定义在函数外部的为全局变量,可在全局使用
模块是将包含所有定义的函数和变量的文件,一般将同类功能的函数组和在一起称为模块。
模块需要导入后,在调用相应函数进行使用
模块导入的方法:
从模块中导入一个指定的部分
把一个模块的所有内容全都导入
def开头。
格式:
def 函数名(参数):
缩进 函数具体的代码
使用关键词 def 声明这是一个函数
1def 函数名 (参数):
2 语句块
参数可以没有,也可以有多个,用逗号隔开,第一行称为函数头,结尾一定要加冒号,代表开始进入函数体的执行。
语句块也就是函数体,是关于这个函数要实现的功能的语句,语句要有返回值即return语句,如果没有return语句,就代表return none.
定义函数需要注意的几个事项:
1、def开头,代表定义函数
2、def和函数名中间要敲一个空格
3、之后是函数名,这个名字用户自己起的,方便自己使用就好
4、函数名后跟圆括号(),代表定义的是函数,里边可加参数
5、圆括号()后一定要加冒号: 这个很重要,不要忘记了
6、代码块部分,是由语句组成,要有缩进
7、函数要有返回值return
下面是几个例子:
1 #python中的函数定义,使用和传参
2 def_str = '''\
3 python中的函数以如下形式声明:
4
5 def 函数名称([参数1,参数2,参数3......]):
6 执行语句
7
8 如:
9
10 def helloWorld():
11 print('hello')
12
13 if __name__ == '_main__':
14 helloWorld()
15
16 输出:hello
17 '''
18 print(def_str)
19
20 #下面进行举例说明
21
22 def helloWorld():
23 print('输出:hello')
24
25 if __name__ == '__main__':
26 helloWorld()
27
28 print('''\
29 ################################################
30
31 函数可以带参数和返回值,参数将按从左到右的匹配,
32 参数可设置默认值,当使用函数时没给相应的参数时,
33 会按照默认值进行赋值
34
35 ################################################
36 ''')
37
38 #定义一个方法:x的y次方
39 def myMethod(x,y):
40 return x**y
41
42 def fib(n):
43 a , b = 0 , 1
44 while a n:
45 print(a, end=' ')
46 a , b = b , a + b
47 print()
48
49 #获取一个新的数组
50 #@param oldList 原数组
51 #@param length 要添加的长度
52 def getList(oldList,length):
53 if length 0:
54 for i in range(0,length):
55 oldList.append(i)
56 return oldList
57 else:
58 return '你输入的长度小于0'
59
60 def ask_ok(prompt, retries=4, complaint='Yes or no, please!'):
61 while True:
62 ok = input(prompt)
63 if ok in ('y', 'ye', 'yes'):
64 return True
65 if ok in ('n', 'no', 'nop', 'nope'):
66 return False
67 retries = retries - 1
68 if retries 0:
69 raise IOError('refusenik user')
70 print(complaint)
71
72 if __name__ == '__main__':
73 x = 3
74 y = 4
75 n = 2000
76 print(x , '的' , y , '次方(' ,x ,'**' , y ,') = ' , myMethod(x,y))
77 print('函数fib(n),当n =' ,n)
78 fib(n)
79 print(getList(['begin'],-10))
80 ask_ok('y')
运行效果:
Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
================================ RESTART ================================
python中的函数以如下形式声明:
def 函数名称([参数1,参数2,参数3......]):
执行语句
如:
def helloWorld():
print('hello')
if __name__ == '_main__':
helloWorld()
输出:hello
输出:hello
################################################
函数可以带参数和返回值,参数将按从左到右的匹配,
参数可设置默认值,当使用函数时没给相应的参数时,
会按照默认值进行赋值
################################################
3 的 4 次方( 3 ** 4 ) = 81
函数fib(n),当n = 2000
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597
你输入的长度小于0
y输出:hello
Yes or no, please!
y
Yes or no, please!
y
Yes or no, please!
y
Yes or no, please!
y
Traceback (most recent call last):
File "E:/Python33/python_workspace/test_function.py", line 80, in module
ask_ok('y')
File "E:/Python33/python_workspace/test_function.py", line 69, in ask_ok
raise IOError('refusenik user')
OSError: refusenik user
params
就是(5, 5)
(5,) * 2 ,就是2个5的元组,乘号可以理解成相加。"*" * 30就是30个“*"的字符串
*params作为参数,前面的*号就是把params元组分解成元素的意思,这样就分开成为2个参数了。实际上传递给了x,y
于是就执行了power(5,5)