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

yipeiwu_com6年前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程序设计有所帮助。

相关文章

Python中使用copy模块实现列表(list)拷贝

引用是指保存的值为对象的地址。在 Python 语言中,一个变量保存的值除了基本类型保存的是值外,其它都是引用,因此对于它们的使用就需要小心一些。下面举个例子: 问题描述:已知一个列表,...

python thread 并发且顺序运行示例

复制代码 代码如下:#-*- coding:utf-8 -*- import threading import time def fun(name, ls_name, front_thr...

python实战教程之自动扫雷

python实战教程之自动扫雷

前言 自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析图片获得数据,并通过模拟鼠标操作,这里我用的是第二种方式。 一、准备工作 1.扫雷游戏 我是win10,没有默认的扫...

python3模拟实现xshell远程执行liunx命令的方法

python3模拟实现xshell远程执行liunx命令的方法

依赖包:pip install paramiko 源码demo: from time import * import paramiko # 定义一个类,表示一台远端linux主机 c...

python3学习之Splash的安装与实例教程

python3学习之Splash的安装与实例教程

前言 Splash是一个javascript渲染服务。它是一个带有HTTP API的轻量级Web浏览器,使用Twisted和QT5在Python 3中实现。QT反应器用于使服务完全异步,...