正文
python函数名的定义 python中函数名
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
python所有内置函数的定义详解
1、定义函数
函数是可重用的程序。本书中已经使用了许多内建函数,如len()函数和range()函数,但是还没自定义过函数。定义函数的语法格式如下:
def 函数名(参数):
函数体
定义函数的规则如下:
①关键字def用来定义一个函数,它是define的缩写。
②函数名是函数的唯一标识,函数名的命名规则遵循标识符的命名规则。
③函数名后面一定要紧跟着一个括号,括号内的参数是可选的,括号后面要有冒号。
④函数体(statement)为一个或一组Python语句,注意要有缩进。
⑤函数体的第一行可以有文档字符串,用于描述函数的功能,用三引号括起来。
按照定义规则,可以定义第一个函数了:
def hello_world():
... print('Hello,world!') # 注意函数体要有缩进
...
hello_world()
Hello,world!
这个函数不带任何参数,它的功能是打印出“Hello,world!”。最后一行代码hello_world()是调用函数,即让Python执行函数的代码。
2、全局变量和局部变量
全局变量是定义在所有函数外的变量。例如,定义一个全局变量a,分别在函数test1()和test2()使用变量a:
a = 100 # 全局变量
def test1():
... print(a)
...
def test2():
... print(a)
...
test1()
100
test2()
100
定义了全局变量a之后,在函数test1()和test2()内都可以使用变量a,由此可知,全局变量的作用范围是全局。
局部变量是在函数内定义的变量,除了用关键字global修饰的变量以外。例如,在函数test1()内定义一个局部变量a,分别在函数外和另一个函数test2()内使用变量a:
def test1():
... a = 100 # 局部变量
... print(a)
...
def test2():
... print(a)
...
test1()
100
print(a)
Traceback (most recent call last):
File "stdin", line 1, in module
NameError: name 'a' is not defined
test2()
Traceback (most recent call last):
File "stdin", line 1, in module
File "stdin", line 2, in test2
NameError: name 'a' is not defined
Python解释器提示出错了。由于局部变量a定义在函数test1()内,因此,在函数test1()内可以使用变量a,但是在函数外或者另一个函数test2()内使用变量a,都会报错,由此可见,局部变量的作用范围是定义它的函数内部。
一般情况下,在函数内声明的变量都是局部变量,但是采用关键字global修饰的变量却是全局变量:
def test1():
... global a # 全局变量
... a = 100
... print(a)
...
def test2():
... print(a)
...
test1()
100
print(a)
100
test2()
100
这个程序与上个程序相比,只是在函数test1()中多了一行代码“global a”,程序便可以正确运行了。在函数test1()中,采用关键字global修饰了变量a之后,变量a就变成了全局变量,不仅可以在该函数内使用,还可以在函数外或者其他函数内使用。
如果在某个函数内局部变量与全局变量同名,那么在该函数中局部变量会覆盖全局变量:
a = 100 # 全局变量
def test1():
... a = 200 # 同名局部变量
... print(a)
...
def test2():
... print(a)
...
test1()
200
test2()
100
由于在函数test1()中定义了一个与全局变量同名的局部变量a,因此,在函数test1()中全局变量a的值被局部变量覆盖了,但是在函数test2()中全局变量a的值没有被覆盖。
综上所述,在Python中,全局变量保存的数据供整个脚本文件使用;而局部变量只用于临时保存数据,变量仅供局部代码块使用。
python里函数的定义
定义:
def 函数名(形参1,形参2='初始定义的内容'):
函数中执行的内容
调用:
函数名(实参1)或函数名(形参2=实参2,形参1=实参1)或函数名(实参1,实参2)
python怎么定义函数
Python中定义函数格式为python函数名的定义,def+函数名python函数名的定义:代码块
如python函数名的定义:
def print_hello():
print("hello")
怎样在ipython中定义函数
使用关键词 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
python函数名的定义的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于python中函数名、python函数名的定义的信息别忘了在本站进行查找喔。