首先给大家推荐一个很好的python入门网站,感觉比《python基础》之类的书更容易懂,廖雪峰小站,希望有学习资源同学们也能多多交流。下面是今天所学:

下面总结一些非常有特色的函数及其应用:

1、map

函数用法:   def func(x):

              .......

      l=[l0,l1,l2,l3,...] % 一个list

      lout=map(func,l)  % 每个元素经过func函数变换后的值输出得到lout   

2、reduce

函数用法:    reduce(func,l)=..func(func(func(l0,l1),l2),l3),..

      类似迭代用法:

      reduce 完成sum:

      k=[1,2,3] kout=sum(k)

      def add_(x1,x2):

        return x1+x2

      kout=reduce(add_,k)

3、还有一种很高效的计算表达:a1,b1=b1,a1+b1 这两个操作是同时进行的

4、生成器

      为了解决list在大规模计算中需要占用很大内存空间的问题,在列表生成式出现了生成器,一边循环一边计算

      列表生成式:h=[x*x for x in range(10)]

      生成器:  g=(x*x for x in range(10))

      生成器输出:  g.next()

5、filter 过滤函数(自称)

      filter(func,l) func为True 输出 否则不输出

6、sorted函数可以自定义,这也是python是排序利器的原因吧

      默认按照ASCII大小来排序,具体按照从小到大的顺序进行排序,机器通过识别两个相邻数相比输出为1时则前者大于后者,-1时则相反的规定进行排序

python学习札记(1)的更多相关文章

  1. Python学习札记(二十五) 函数式编程6 匿名函数

    参考:匿名函数 NOTE 1.Python对匿名函数提供了有限的支持. eg. #!/usr/bin/env python3 def main(): lis = list(map(lambda x: ...

  2. Python学习札记

    Python是很多公司都在使用的一种脚本语言,其语法与Perl.C++.JAVA等都大同小异.本文仅对一些比较常用的语法结构进行总结,比如字典.列表.正则匹配.读写文件等.供广大喜爱Python的同学 ...

  3. Python学习札记-eval函数

    eval()函数 eval()官方文档里面给出来的功能解释是:将字符串string对象转化为有效的表达式参与求值运算返回计算结果 语法上:调用的是:eval(expression,globals=No ...

  4. Python学习札记(四十三) IO 3

    参考:操作文件和目录 NOTE: 1.Python内置的os模块可以直接调用操作系统提供的接口函数: 2.os.name 打印操作系统的名称:如果是posix,说明系统是Linux.Unix或Mac ...

  5. Python学习札记(四十二) IO 2

    参考:StringIO和BytesIO NOTE 1.StringIO: 顾名思义就是在内存中读写str. #!/usr/bin/env python from io import BytesIO a ...

  6. Python学习札记(四十) 面向对象编程 Object Oriented Program 11

    参考:使用元类 NOTE: type() 1.type()函数可以用于检查一个类或者变量的类型. #!/usr/bin/env python3 class Myclass(object): " ...

  7. Python学习札记(三十九) 面向对象编程 Object Oriented Program 10

    参考:使用枚举类 NOTE #!/usr/bin/env python3 from enum import Enum def main(): Mouth = Enum('Mouth', ('Jan', ...

  8. Python学习札记(三十八) 面向对象编程 Object Oriented Program 9

    参考:多重继承 NOTE #!/usr/bin/env python3 class Animal(object): def __init__(self, name): self.name = name ...

  9. Python学习札记(三十七) 面向对象编程 Object Oriented Program 8 @property

    参考:@property NOTE 1.在绑定参数时,为了避免对属性不符合逻辑的操作,需要对传入的参数进行审核. #!/usr/bin/env python3 class MyClass(object ...

随机推荐

  1. iOS开发之内购-AppStore

    本文会给大家详细介绍iOS内购,虽然之前网上也有内购的教程,但是还不够详细,我重新整理出一份教程,希望对大家有所帮助. 基于Xcode7.1.1版本,模拟器iphone6,9.1系统.部分地方直接摘自 ...

  2. Java 多线程——基础知识

    java 多线程 目录: Java 多线程——基础知识 Java 多线程 —— synchronized关键字 java 多线程——一个定时调度的例子 java 多线程——quartz 定时调度的例子 ...

  3. javascript 数组操作 转

    javascript之数组操作 1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一 ...

  4. 转载Javascript继承两种形式详解

    一直想对Javascript再次做一些总结,正好最近自己写了一个小型Js UI库,总结了一下Js的继承机制,在网上也看了一些前辈们博客里的总结,感觉分析不是特别全面.这里仅仅是把自己的学习体会拿出来分 ...

  5. WPF的Binding功能解析

    1,Data Binding在WPF中的地位 程序的本质是数据+算法.数据会在存储.逻辑和界面三层之间流通,所以站在数据的角度上来看,这三层都很重要.但算法在3层中的分布是不均匀的,对于一个3层结构的 ...

  6. linux shell中,单引号、 双引号,反引号(``),$()的区别

    一.单引号和双引号 首先,单引号和双引号,都是为了解决中间有空格的问题. 空格在linux中时作为一个很典型的分隔符,比如 string1=this is a string,这样执行会报错.为了避免这 ...

  7. mysql 忘记root密码修改方法

    先将mysql安装bin目录(例如:c:xxx\xxx\mysql\bin  加入环境变量) 1.在命令行窗口下输入net stop mysql5 或 net stop mysql 2.开一个命令行窗 ...

  8. HADOOP :: java.lang.ClassNotFoundException: WordCount

    I am using eclipse to export the jar file of a map-reduce program. When i am run the jar using comma ...

  9. tomcat 创建虚拟主机

    1. tomcat8 2. TOMCATROOT/conf/server.xml 增加<Host name="HOSTNAME" appBase="ROOTDir& ...

  10. Android 主页面顶部栏的通知Notification ,可以自定义通知消息栏的风格,并且点击通知栏进人本程序。

    常用的程序通知,显示到主页面的顶部栏. package com.lixu.tongzhi; import android.app.Activity; import android.app.Notifi ...