day31-python阶段性复习五

打印目录下所有文件

os 模块

os.listdir(‘/home’) 列出目录下所有文件

os.path.isdir(‘/home’) 判断一个文件是不是一个目录

os.path.isfile(‘/home’) 判断一个文件是不是一个文件

os.path.join  连接文件

代码

#/usr/bin/python

import os

import sys

def print_files(path):

    lsdir = os.listdir(path)

    dirs = [i for i in lsdir if os.path.isdir(os.path.join(path,i))]

    files = [i for i in lsdir if os.path.isfile(os.path.join(path,i))]

    if files:

       for f in files:

           print os.path.join(path,f)

    if dirs:

        for d in dirs:

            print_files(os.path.join(path,d))

print_files(sys.argv[1])

 

匿名函数

lambda函数是一种快速定义单行的最小函数,可以用在任何需要函数的地方。

匿名函数优点:

  1. 使用python写一些脚本时,使用lanmbda可以省去定义函数的过程,让代码更加精简。
  2. 对于一些抽象的,不会被别的地方再重复使用的函数,有时候函数起个名字也是个难题,使用lambda不需要考虑命名的问题。
  3. 使用lambda在某些时候让代码更容易理解。

lambda基础

lambda语句中,冒号前是参数,可以有多个,逗号隔开,冒号右边是返回值。

lambda语句构建的其实是一个函数对象。

reduce内置函数,对序列进行前面函数操作。必须是二元计算。

python内置函数

https://docs.python.org/2/library 查看内置函数

abs(-10)  返回一个数的绝对值

max([1,23,4]) 求最大值  可以是字符串,比较可迭代对象, 也可比较单独字符串

min([1,23,4])求最小值

len('123124') 取字符串长度.

divmod(4,1)  返回一个元组,除法运算,返回商和余数.

pow(2,3) 乘方运算,返回乘方值,x的y次方,3个参数,x的y次方与z去余

round(12.8) 四舍五入运算,

print round(12.83,2) 四舍五入运算, 保留俩位小数.

float(24.45)  将数值变成浮点数.

callable() 查看对象是否可调用,函数,类可调用

type() 类型,查看对象类型

isinstance(a,int) 排断对象是否是定义的类型,如果是返回TRUE,否则返回False,排断类

cmp(x,y)x<y,返回-1,x=y返回0,x>y返回1

range()返回数字列表

xrange()返回可迭代对象

类型转换函数

int()对象返回整型

long()对象返回长整型

float()对象返回浮点型

complex()对象转换成浮数

str() 转换成字符串

list()对象返回是列表

tuple()对象返回列表

hex()对象返回十六进制字符串

oct()对象返回八进制字符串

chr()对象返回值是当前参数对象的ascii码

ord()对象返回值是ascil码的值

eval()将字符串当有效的值求值

高阶函数

高阶函数:就是把函数当成参数传递的一种函数,例如:

def add(x,y,f):

return f(x)+f(y)

print(add(-8,11,abs))

结果:

19

解释:

  1. 调用add函数,分别执行abs(-8) 和abs(11),分别计算出他们的值
  2. 最后做和运算
  3. Map()函数

Map函数

上一篇:Objective-C中的委托(代理)模式


下一篇:mysql性能分析-------profiling和explain