函数

  • 函数的定义关键字:def

  • 使用global语句可以清楚地表明变量是在外面的块定义的

  • 示例:(函数运行完毕后x的值是2)

#!/usr/bin/python
# Filename: func_global.py def func():
global x print 'x is', x
x = 2
print 'Changed local x to', x x = 50
func()
print 'Value of x is', x
  • 可以给形参加上默认值,默认参数是不可变的,而且只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认

    值的形参。这是因为赋给形参的值是根据位置而赋值的。例如,def func(a, b=5)是有效的,但是def func(a=5, b)是无效的。

  • 示例:

#!/usr/bin/python
# Filename: func_default.py def say(message, times = 1):
print message * times say('Hello')
say('World', 5)
Hello
WorldWorldWorldWorldWorld
  • 关键参数,很有意思,可以根据指定的参数名字赋值,而不必每次都要按位置赋值

  • 示例:

#!/usr/bin/python
# Filename: func_key.py def func(a, b=5, c=10):
print 'a is', a, 'and b is', b, 'and c is', c func(3, 7)
func(25, c=24)
func(c=50, a=100)

运行结果:

$ python func_key.py
a is 3 and b is 7 and c is 10
a is 25 and b is 5 and c is 24
a is 100 and b is 5 and c is 50
  • pass语句在Python中表示一个空的语句块。就像在java/c++里面的;

  • 除非你提供你自己的return语句,每个函数都在结尾暗含有return None语句

  • 文档字符串DocStrings,它所做的只是抓取函数的__doc__属性,然后整洁地展示给你

#!/usr/bin/python
# Filename: func_doc.py def printMax(x, y):
'''Prints the maximum of two numbers. The two values must be integers.'''
x = int(x) # convert to integers, if possible
y = int(y) if x > y:
print x, 'is maximum'
else:
print y, 'is maximum' printMax(3, 5)
print printMax.__doc__

python学习之路-第三天-函数的更多相关文章

  1. 大数据萌新的Python学习之路(三)

    笔记内容:  一.集合及其运算 在之列表中我们可以存储数据,并且对数据进行各种各样的操作.但是如果我们想要对数据进行去重时是十分麻烦的,需要使用循环,要建立新的列表,还要 进行对比,十分的麻烦,还消耗 ...

  2. python学习之路-4 内置函数和装饰器

    本篇涉及内容 内置函数 装饰器 内置函数 callable()   判断对象是否可以被调用,返回一个布尔值 1 2 3 4 5 6 7 8 9 10 11 num = 10 print(callabl ...

  3. python学习之路 第三天

    1.set集合:去掉重复字段 set.difference()找出不同并创建一个新的集合,不改变原来集合: set.difference_update() 改变原来集合,剔除掉括号内容: set.di ...

  4. Python学习之路 (三)爬虫(二)

    通用爬虫和聚焦爬虫 根据使用场景,网络爬虫可分为 通用爬虫 和 聚焦爬虫 两种. 通用爬虫 通用网络爬虫 是 捜索引擎抓取系统(Baidu.Google.Yahoo等)的重要组成部分.主要目的是将互联 ...

  5. Python学习之路-Day2-Python基础3

    Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...

  6. Python学习之路-Day2-Python基础2

    Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...

  7. Python学习之路【第一篇】-Python简介和基础入门

    1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...

  8. python学习之路------你想要的都在这里了

    python学习之路------你想要的都在这里了 (根据自己的学习进度后期不断更新哟!!!) 一.python基础 1.python基础--python基本知识.七大数据类型等 2.python基础 ...

  9. python学习之路-day2-pyth基础2

    一.        模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...

随机推荐

  1. MySQL 行号(类似SQLServer的row_number())

    Select ID,(@rowNum:=@rowNum+1) as RowNo From a,(Select (@rowNum :=0) ) b

  2. 公共查询类criteria

    package cn.edu.hbcf.common.vo; import java.math.BigDecimal; import java.sql.Timestamp; import java.u ...

  3. The Definitive Guide To Django 2 学习笔记(六) 第四章 模板 (二)使用模板系统

    模板系统不是django特有的,它是python的一个库,你可以在任何地方使用它. 使用方法: 1.使用 Template()方法创建Template对象.2.调用Template对象的render( ...

  4. linux--jdk安装与配置

    此处以centos下jdkjdk1.8.0_161安装(此处为rpm安装事例)为例 1.java官网下载页找到对应版本的jdk下载链接地址 2.下载对应版本的rmp包到服务器,执行如下指令: wget ...

  5. linux web.py spawn-fcgi web.py 配置

    本来要用uwsgi,但是...介于以前说过...这台服务器略老...redhat 3的系统...确实很老,没法用yum,没法安装很多东西,打算自己编译uwsgi,但是编译各种错误...花了快一天,最后 ...

  6. Istio官方文档中文版

    Istio官方文档中文版 http://istio.doczh.cn/ https://istio.io/docs/concepts/what-is-istio/goals.html 为什么要使用Is ...

  7. CI框架整合微信公共平台接口

    #CI框架控制器 <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); /*** CI框架整合微信 ...

  8. 我的直播demo

    推流工具: ffmpeg 接收/转发流工具: nginx-rtmp 在线播放工具: video.js -------------------------------------- demo地址: ht ...

  9. Java 还是 C++?

    Java 特别象 C++:由此很自然地会得出一个结论:C++似乎会被Java 取代.但我对这个逻辑存有一些疑问. 无论如何,C++仍有一些特性是Java 没有的.而且尽管已有大量保证,声称Java有一 ...

  10. JS encodeURI和encodeURIComponent

    一.最常用的encodeURI和encodeURIComponent 对URL编码是常见的事,所以这两个方法应该是实际中要特别注意的.它们都是编码URL,唯一区别就是编码的字符范围,其中encodeU ...