python开发之函数定义实例分析

yipeiwu_com5年前Python基础

本文实例讲述了python开发之函数定义方法。分享给大家供大家参考,具体如下:

下面是我做的几个用列:

#python中的函数定义,使用和传参
def_str = '''\
  python中的函数以如下形式声明:
  def 函数名称([参数1,参数2,参数3......]):
    执行语句
  如:
  def helloWorld():
    print('hello')
  if __name__ == '_main__':
    helloWorld()
  输出:hello
  '''
print(def_str)
#下面进行举例说明
def helloWorld():
  print('输出:hello')
if __name__ == '__main__':
  helloWorld()
print('''\
  ################################################
  函数可以带参数和返回值,参数将按从左到右的匹配,
  参数可设置默认值,当使用函数时没给相应的参数时,
  会按照默认值进行赋值
  ################################################
  ''')
#定义一个方法:x的y次方
def myMethod(x,y):
  return x**y
def fib(n):
  a , b = 0 , 1
  while a < n:
    print('a, end = ')
    a , b = b , a + b
  print()
#获取一个新的数组
#@param oldList 原数组
#@param length 要添加的长度
def getList(oldList,length):
  if length > 0:
    for i in range(0,length):
      oldList.append(i)
    return oldList
  else:
    return '你输入的长度小于0'
def ask_ok(prompt, retries=4, complaint='Yes or no, please!'):
  while True:
    ok = input(prompt)
    if ok in ('y', 'ye', 'yes'):
      return True
    if ok in ('n', 'no', 'nop', 'nope'):
      return False
    retries = retries - 1
    if retries < 0:
      raise IOError('refusenik user')
    print(complaint)
if __name__ == '__main__':
  x = 3
  y = 4
  n = 2000
  print(x , '的' , y , '次方(' ,x ,'**' , y ,') = ' , myMethod(x,y))
  print('函数fib(n),当n =' ,n)
  fib(n)
  print(getList(['begin'],-10))
  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
  ################################################
  
  函数可以带参数和返回值,参数将按从左到右的匹配,
  参数可设置默认值,当使用函数时没给相应的参数时,
  会按照默认值进行赋值

  ################################################
的 4 次方( 3 ** 4 ) = 81
函数fib(n),当n = 2000
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程序设计有所帮助。

相关文章

对numpy中轴与维度的理解

对numpy中轴与维度的理解

NumPy's main object is the homogeneous multidimensional array. It is a table of elements (usu...

seek引发的python文件读写的问题及解决

我的需求很简单,就是统计一下我的安装脚本执行的次数和时间,格式是这样的 install_times:1|install_times:2018-09-03 15:58:46 insta...

解决tensorflow测试模型时NotFoundError错误的问题

错误代码如下: NotFoundError (see above for traceback): Unsuccessful TensorSliceReader constructor...

python-OpenCV 实现将数组转换成灰度图和彩图

python-OpenCV 实现将数组转换成灰度图和彩图

主要步骤 1.生成普通python数组(bytearray(),os.urandom()) 2.转换成numpy数组(numpy.array()) 3.通过reshape将数组转换到所需...

Python实现的递归神经网络简单示例

本文实例讲述了Python实现的递归神经网络。分享给大家供大家参考,具体如下: # Recurrent Neural Networks import copy, numpy as n...