一、创建函数

>>> import math

>>> x=1

>>> y=math.sqrt

>>> callable(x) #显示False

>>> callable(y) #显示True

1、def,用来创建函数

>>> def hello(name)

>>>  return 'Hello, '+name+'!'

>>> print(hello('world'))

显示:Hello, world

2、为函数增加说明

>>> def square(x):

>>>  'Calculates the square of the number x.'

>>>  return x *x

>>> square.__doc__

显示:'Calculates the square of the number x.'

通过help查看函数

>>> help(square)

二、函数参数

1、抽象函数

>>> def init(data):

>>>  data['first']={}

>>>  data['middle']={}

>>>  data['last']={}

>>> storage={}

>>> init(storage)

>>> storage

显示:{'middle':{},'last':{},'first':{}}

2、收集参数

>>> def print_params(x,y,z=3,*pospar,**keypar)

>>>  print(x,y,z)

>>>  print(pospar)

>>>  print(keypar)

显示:1 2 3    (5,6,7)  {'foo':1,'bar':2}

注:‘*’,单个星号用来联合普通参数,‘**’,两个星号用来处理关键字

3、power计算乘积

>>> power(3,2)

显示:9

4、interval,间隔

>>> interval(10)

显示:[0,1,2,3,4,5,6,7,8,9]

>>> interval(1,5)

显示:[1,2,3,4]

5、当参数名和全局变量名一样时,全局变量会被屏蔽,不能直接访问,如果要想访问,就需要借助globals

>>> def combine(parameter):

>>>  print(parameter+globals()['parameter'])

>>> parameter='berry'

>>> combine('Shrub')

显示:Shrubberry

Python学习笔记之抽象的更多相关文章

  1. python学习笔记3_抽象

    这一步的学习四个知识点,如何将语句组织成函数,参数,作用域(scope),和递归 一.函数 1.抽象和结构 抽象可以节省很多的工作量,实际上它的作用更大,它是使得计算机程序让人读懂的关键(这也是最基本 ...

  2. 【python学习笔记】7.更加抽象

    [python学习笔记]7.更加抽象 类的定义就是执行代码块 在内存保存一个原始实例,可以通过类名来访问 类的实例化,是创建一个原始实例的副本, 并且所有成员变量与原始实例绑定 通过修改实例变量,可以 ...

  3. 【python学习笔记】6.抽象

    [python学习笔记]6.抽象 创建函数: 使用def语句定义函数,不用声明参数类型,和返回值类型 def function_name(param1, param2): 'this is docum ...

  4. python学习笔记4_类和更抽象

    python学习笔记4_类和更抽象 一.对象 class 对象主要有三个特性,继承.封装.多态.python的核心. 1.多态.封装.继承 多态,就算不知道变量所引用的类型,还是可以操作对象,根据类型 ...

  5. 【Python学习笔记之二】浅谈Python的yield用法

    在上篇[Python学习笔记之一]Python关键字及其总结中我提到了yield,本篇文章我将会重点说明yield的用法 在介绍yield前有必要先说明下Python中的迭代器(iterator)和生 ...

  6. Deep learning with Python 学习笔记(10)

    生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...

  7. Deep learning with Python 学习笔记(4)

    本节讲卷积神经网络的可视化 三种方法 可视化卷积神经网络的中间输出(中间激活) 有助于理解卷积神经网络连续的层如何对输入进行变换,也有助于初步了解卷积神经网络每个过滤器的含义 可视化卷积神经网络的过滤 ...

  8. Deep learning with Python 学习笔记(3)

    本节介绍基于Keras的使用预训练模型方法 想要将深度学习应用于小型图像数据集,一种常用且非常高效的方法是使用预训练网络.预训练网络(pretrained network)是一个保存好的网络,之前已在 ...

  9. Deep learning with Python 学习笔记(2)

    本节介绍基于Keras的CNN 卷积神经网络接收形状为 (image_height, image_width, image_channels)的输入张量(不包括批量维度),宽度和高度两个维度的尺寸通常 ...

随机推荐

  1. 我认识的log4j开源日志

    Log4j 在java中如何配置log4j!! 步骤: ①引入jar包,推荐新建一个lib文件夹,用来装所有的jar包(还要进行下图内的操作) 之后项目中就会多出一个引入外部Library的项目 ②创 ...

  2. 安卓手机APP压力monkey测试

    一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行 ...

  3. markdown-js 添加表格,代码块 parse

    简介 markdown-js 是将 markdown转换成 HTML 的 JavaScript 库,我再网站中使用它来预览 markdown ,但是发现它对 代码块 和 表格 是不转换的.这么鸡肋的地 ...

  4. wx getlocation

    http://www.cnblogs.com/txw1958/p/weixin-web-location.html http://blog.csdn.net/myfmyfmyfmyf/article/ ...

  5. 用PHP调用Oracle存储过程方法

    //建立一个TEST表CREATE TABLE TEST (  ID        NUMBER(16)        NOT NULL,  NAME      VARCHAR2(30)      N ...

  6. NOIP2014 day2 T2寻找道路

    #include<iostream> #include<cmath> #include<cstdlib> #include<cstdio> #inclu ...

  7. C# 整数转二进制字符串

    可以便于调试位运算 void Execute() { , ); , ); , ); Debug.Log("1: " + a); Debug.Log("2: " ...

  8. eaysui 利用datagrid 实现左右移除数据

    效果图 $(function () { var logBussnessAgentData = []; var logInspectionEngineerData = []; //选中 $(" ...

  9. Markdown工具之---Typora

    在项目集成阶段中,接口文档是不可避免的,以往的我使用word编辑器编写接口文档,虽然word使用不是很熟练,但是只要在网上下载模板或者自己花时间搞定一个文档格式 基本能一劳永逸.但是还是会有很多问题存 ...

  10. 一看便知_配置linux 网络配置的几种方法

    一. -    setup    进入设置  -    /etc/rc.d/init.d/network  restart    运行完才会生效刚才的修改    二.命令设置 [临时生效]-    i ...