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函数是一种快速定义单行的最小函数,可以用在任何需要函数的地方。
匿名函数优点:
- 使用python写一些脚本时,使用lanmbda可以省去定义函数的过程,让代码更加精简。
- 对于一些抽象的,不会被别的地方再重复使用的函数,有时候函数起个名字也是个难题,使用lambda不需要考虑命名的问题。
- 使用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
解释:
- 调用add函数,分别执行abs(-8) 和abs(11),分别计算出他们的值
- 最后做和运算
- Map()函数
Map函数
day31-python阶段性复习五的更多相关文章
- Python并发复习1 - 多线程
一.基本概念 程序: 指令集,静态, 进程: 当程序运行时,会创建进程,是操作系统资源分配的基本单位 线程: 进程的基本执行单元,每个进程至少包含一个线程,是任务调度和执行的基本单位 > 进程和 ...
- 初学 Python(十五)——装饰器
初学 Python(十五)--装饰器 初学 Python,主要整理一些学习到的知识点,这次是生成器. #-*- coding:utf-8 -*- import functools def curren ...
- Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fabric模块
Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fab ...
- python学习第五次笔记
python学习第五次笔记 列表的缺点 1.列表可以存储大量的数据类型,但是如果数据量大的话,他的查询速度比较慢. 2.列表只能按照顺序存储,数据与数据之间关联性不强 数据类型划分 数据类型:可变数据 ...
- Python学习第五堂课
Python学习第五堂课推荐电影:华尔街之狼 被拯救的姜哥 阿甘正传 辛德勒的名单 肖申克的救赎 上帝之城 焦土之城 绝美之城 #上节内容: 变量 if else 注释 # ""& ...
- day27-python阶段性复习-基础
一.基础资料,安装python Python 跨平台的,(Linux,Windows,mac) 网站www.python.org 解释器交互方式 Ipython Python shell https: ...
- Python爬虫进阶五之多线程的用法
前言 我们之前写的爬虫都是单个线程的?这怎么够?一旦一个地方卡到不动了,那不就永远等待下去了?为此我们可以使用多线程或者多进程来处理. 首先声明一点! 多线程和多进程是不一样的!一个是 thread ...
- Python爬虫实战五之模拟登录淘宝并获取所有订单
经过多次尝试,模拟登录淘宝终于成功了,实在是不容易,淘宝的登录加密和验证太复杂了,煞费苦心,在此写出来和大家一起分享,希望大家支持. 温馨提示 更新时间,2016-02-01,现在淘宝换成了滑块验证了 ...
- Python爬虫入门五之URLError异常处理
大家好,本节在这里主要说的是URLError还有HTTPError,以及对它们的一些处理. 1.URLError 首先解释下URLError可能产生的原因: 网络无连接,即本机无法上网 连接不到特定的 ...
随机推荐
- python测试相关小问题
实操中的小问题 pycharm 一次运行多个test configuration 项目分层,分包之后,tests也分到不同层的不同project里了,tests也分开. 为了防止基层模块改动,影响上层 ...
- sessionId的生成机制
目录 面试问道这个我居然不知道怎么回答,当然也是因为我确实没有研究过.下面就是百度了一篇文章后简单回答这个问题. 参考:http://www.cnblogs.com/sharpxiajun/p/339 ...
- 全排列问题Ⅱ(Java实现)
题目: 给定一个可包含重复数字的序列,返回所有不重复的全排列. 示例: 输入: [1,1,2] 输出: [ [1,1,2], [1,2,1], [2,1,1] ]这个问题和我的上一篇问题分析的手法一样 ...
- CentOS7.6 如何设置静态ip
[root@localhost network-scripts]# cd /etc/sysconfig/network-scripts/[root@localhost network-scripts] ...
- java重新开始学习
1.从菜鸟网站开始学习.http://www.runoob.com/java/java-tutorial.html 2. String args[] 与 String[] args 还有一个就是Str ...
- Redis持久化AOF和RDB对比
RDB持久化 AOF持久化 全量备份,一次保存整个数据库 增量备份,一次保存一个修改数据库的命令 保存的间隔较长 保存的间隔默认一秒 数据还原速度快 数据还原速度一般 save会阻塞,但bgsave或 ...
- springboot外置的Servlet容器
嵌入式Servlet容器:应用打成可执行的jar 优点:简单.便携: 缺点:默认不支持JSP.优化定制比较复杂(使用定制器[ServerProperties.自定义EmbeddedServle ...
- (未完成👃)You Don't Know JS: Scope & Closures (第5章: Scope & Closures)
Chapter 5: Scope Closure 我们到达这里时,已经对作用域如何工作有了非常健康稳固的理解. 下面,我们转移注意力到一个及其重要,但长期难以理解,几乎是神话中的部分语言:Closur ...
- session一二事
Session即回话,指一种持续性的.双向的连接.Session和Cookie在本质上没有什么区别,都是针对HTTP协议的局限性而提出的一种保持客户端和服务器间保持会话连接状态的机制. Session ...
- RabbitMQ、Redis、Memcache
Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度 ...