Python如何定义一个函数?

Python011

Python如何定义一个函数?,第1张

没注意 把x y改成 a b 应该满足题目了

def divideExactly(x, y):

list1 = []

for i in range(x, y):

if i % 7 == 0:

if i % 5 != 0:

list1.append(i)

l = ','.join(str(i) for i in list1)

print(l)

divideExactly(10, 100)

使用关键词 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