函数的作用域:

 name = 'alex'

     def foo():
name = 'linhaifei'
def bar():
name = "wupeiqi"
def tt():
name='tt'
print(name)
return tt
return bar foo()()()

#匿名函数

lambda x: x+1
# x 形参 ; x+1 返回值 lambda x:x+1 #匿名函数赋值

  

name =  'alex' #name = 'alex'
函数:
def chang_name(x):
 return name+'_sb'
匿名函数: 
lambda x:name+'_sb'
 
 
函数式编程:函数式 = 编程语言定义的函数+ 数学意义上的函数
 编程的方法论:
  面向过程
  函数式
  面向对象
  
 高阶函数:
  满足两个特性任意一个即为高阶函数
  1.函数的传入参数是一个函数名
  2.函数的返回值是一个函数名
 
 def bar():
print("from bar") def foo():
print('from foo')
return bar
n = foo()
n() #尾递归:
def cal(l):
print("assd")
return cal(l)

map 函数:

num_l = [1, 2, 3, 4, 5]
def map_test(func, array): #func = lambda x:x+1 array = [1, 2, 3, 4, 5]
ret = []
for i in array:
res = func(i)
ret.append(res)
return ret print(map_test(lambda x:x+1, num_l) res = map(lambda x:x+1, num_l)
#for i in res:#迭代器,只能迭代一次!
# print(i)
print(list(res))

  
filter函数:

movie_people = ['sb_alex', 'sb_wupeiqi', 'linhaifeng', 'sb_yuanhao']

def sb_show(n):
return n.endswith('sb')
# lambda n: n.endswith('sb') def filter_test(func,array):
ret = []
for i in array:
if not i.func(i):
ret.append(i)
return ret
print(filter_test(sb_show, movie_people)) #最终:
filter(lambda n:not n.endswith('sb'), movie_people)
print(list(filter(lambda n:not n.endswith('sb'), movie_people)))

  reduce 函数:

num_l = [1, 2, 3, 4, 5]
#相加:
#res = 0
#for num in num_l:
# res+=num
#print(res) def multi(x, y):
return x*y def reduce_test(func, array, init=None):
if init is None:
res = array.pop(0)
else:
res = init
for num in array:
res=func(res, num)
return res #最终:
from function import reduce
num_l=[1, 2, 3, 100]
print(reduce(lambda x, y:x+y, num_l, 1)

  文件处理:

    f = open('文件名', encoding='utf-8')
data = f.read()
print(data)
f.close() #r w a
默认打开的就是只读模式
f = open('文件名','r', encoding='utf-8')
data = f.read()
print(f.readable())
print(f.readline())
print(data)
f.close() #w 模式: 如果文件存在,文件会被清除,如果文件不存在,文件会被新建
f = open('文件名','w', encoding='utf-8')
f.write('111111\n')
f.write('222222\n')
#f.writeable()#是否可写
#f.writelines(['555\n', '666\n'])
f.close()
#a 可追加
f = open('文件名','a', encoding='utf-8')
f.write('111111\n') f.close() 即能读,也能写
f = open('文件名','r+', encoding='utf-8')
data = f.read()
print(f.readable())
print(f.readline())
print(data)
f.close()
 
 
 

python基础语法四的更多相关文章

  1. Python 基础语法(四)

    Python 基础语法(四) --------------------------------------------接 Python 基础语法(三)------------------------- ...

  2. Python 基础语法(三)

    Python 基础语法(三) --------------------------------------------接 Python 基础语法(二)------------------------- ...

  3. python学习第四讲,python基础语法之判断语句,循环语句

    目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...

  4. 吾八哥学Python(四):了解Python基础语法(下)

    咱们接着上篇的语法学习,继续了解学习Python基础语法. 数据类型大体上把Python中的数据类型分为如下几类:Number(数字),String(字符串).List(列表).Dictionary( ...

  5. python基础语法(四)

    --------------------------------------------接 Python 基础语法(三)---------------------------------------- ...

  6. python基础语法及知识点总结

    本文转载于星过无痕的博客http://www.cnblogs.com/linxiangpeng/p/6403991.html 在此表达对原创作者的感激之情,多谢星过无痕的分享!谢谢! Python学习 ...

  7. 【转】Python基础语法

    [转]Python基础语法 学习一门编程语言,通常是学习该语言的以下几个部分的内容: 基础语法:如,变量的声明与调用.基本输出语句.代码块语法.注释等: 数据类型:通常都为 数字.字符串.布尔值.数组 ...

  8. python基础语法(一)

    Python的特点 1. 简单 Python是一种代表简单思想的语言. 2. 易学 Python有极其简单的语法. 3. 免费.开源 Python是FLOSS(自由/开放源码软件)之一. 4. 高层语 ...

  9. Python基础语法(转)

    作者:Peter 出处:http://www.cnblogs.com/Peter-Zhang/   Python 基础语法(一) Python的特点 1. 简单 Python是一种代表简单思想的语言. ...

随机推荐

  1. Altium Designer添加元件库文件

    1 默认元件库路径 C:\Users\Public\Documents\Altium\AD 10.0.0.20340\Library 2 创建元件原理图库 图2.1 新建schlib 图2.2 绘制元 ...

  2. [springMvc] 源码分析笔记(二)

    1.SpringMvc 中核心Servlet的继承结构图 2.HttpServletBean public abstract class HttpServletBean extends HttpSer ...

  3. ReactNative快速开发App一步到位

    http://www.ifenxiang.net/thread-626-1-1.html

  4. centos7与centos6命令区别

    CentOS 7 vs CentOS 6的不同    (1)桌面系统[CentOS6] GNOME 2.x[CentOS7] GNOME 3.x(GNOME Shell) (2)文件系统[CentOS ...

  5. wget 使用

    1.很多软件官网会有安装脚本,并把脚本搞成raw模式,方便下载后直接运行的shell文件.比如docker wget -qO- get.docker.com | bash -q的含义是:--quiet ...

  6. SpringBoot是什么,可以做什么?

    SpringBoot简析 1.SpringBoot是什么?    在Spring框架这个大家族中,产生了很多衍生框架,比如 Spring.SpringMvc框架等,Spring的核心内容在于控制反转( ...

  7. PS笔刷的使用002

    001设置好的页面如下: 开始002的小记 1.这一套笔刷最常用的五个笔刷: 下面画一个例图 2.画画时候分好图层很重要,把要画的图片一个图层,画纸一个图层,和一个灰色图层,灰色图层使你不会画的超过画 ...

  8. css属性应用bug大杂烩(后续继续更新)

    一.Flex布局使用时的坑: 1.常见的左右分布的flex布局中,左侧给定宽度,右侧占满剩余空间,但当右侧中文字内容很多时,会挤占左侧空间,时左侧不能按照定宽显示. <style> .fa ...

  9. 阿里云Oss对象存储

    将文件保存到阿里云上. 1.添加对象存储OSS空间 (新建Bucket) 可以在阿里云后台对象存储里面添加,也可以通过api添加.添加之后设置权限. skd使用. 1安装 Aliyun.OSS.SDK ...

  10. JavaScript热身练习1

    把某个元素移出你的视线: 1.display:none:(显示为无,不占地) 2.visibility:hidden:(隐藏,占地) 3.宽或者高设置为零 4.透明度设置 5.left/top (定位 ...