匿名函数及paramiko模块

1.匿名函数

随着程序代码的不断增加,起名字其实也是非常困难的一件事

一些简单的功能完全没必要用def函数,匿名函数足矣

def test(x,y):

return x+y

res = test(1,2)

print(res)

res = (lambda x,y: x+y)(1,2)  匿名函数用lambda定义

print(res)

上面两个函数实现的功能相同

2.内置函数

1)max

info = {

‘li‘: 2000,

‘zhao‘:30000,

‘wu‘: 25000,

‘du‘: 40000

}

def func(k):

return info[k]

res = max(info,key=lambda k: info[k])将info输入到key=后的函数中

print(res)

2)sorted 排序

info = {

‘li‘: 2000,

‘zhao‘:30000,

‘wu‘: 25000,

‘du‘: 40000

}

res = sorted(info,key=lambda k:info[k])

print(res)

3)map:映射

l1 = [1,2,3]

l2 = [‘a‘,‘b‘,‘c‘,‘d‘]

res = zip(l1,l2)

print(list(res))

l2中多出来的元素并不会与l1中元素进行对应,输出不会报错并且只输出有对应的部分

names = [‘zhao‘, ‘du‘, ‘wu‘]

info = []

for name in names:

data = name.replace(name,‘%s_NB‘ % name)

info.append(data)

print(info)

res = map(lambda name: ‘%s_NB‘ % name,names)

print(list(res))

4)filter  过滤

names = [‘zhao_NB‘, ‘du_NB‘, ‘wu_NB‘,‘li‘]

for name in names:

if name.endswith(‘NB‘):

print(name)

res = filter(lambda name: name.endswith(‘NB‘),names)

print(list(res))

3.paramiko模块

模拟ssh登录linux主机,有上传和下载功能

1)登录

import paramiko

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(hostname=‘192.168.52.233‘,port=22,username=‘root‘,password=‘1‘)

while True:

cmd = input(‘[[email protected] ~ ]# ‘).strip()

if cmd:

stdin,stdout,stderr = ssh.exec_command(cmd)

print(stdout.read().decode(‘utf-8‘))

2)上传和下载

import paramiko

t = paramiko.Transport((‘192.168.52.233‘,22))必须为元组形式

t.connect(username=‘root‘,password=‘1‘)

sftp = paramiko.SFTPClient.from_transport(t)

sftp.put(r‘pass‘,‘pass‘)上传,路径必须为绝对路径,后面的路径必须指定文件名可相同可不同

sftp.get(‘pass‘,r‘pass‘)下载

sftp.close()

原文地址:https://www.cnblogs.com/Agnostida-Trilobita/p/11053864.html

时间: 2024-10-16 01:13:22

匿名函数及paramiko模块的相关文章

python --递归--匿名函数--枚举--xlwt模块--redis--mysql--加密解密

知识点一.递归 def fun(): num = int(input('输入内容')) if num%2 == 0: print('偶数') return else: fun()fun() 知识点二.匿名函数 #匿名函数#f = lambda x,b:str(x+b)#入参:返回值#(0,30)补零,map()循环函数,str(x).zfill(2)补零result = list(map(lambda x:str(x).zfill(2),range(1,30)))print(result) #枚

Javascript匿名函数的作用之一:创建临时的命名空间,防止全局变量污染

如果你写了一段js模块的代码,这段代码将用在不同的程序中(对客户端Javascript来说通常是在各种各样的网页中).假定这段代码定义了一个用以存储中间计算结果的变量,问题来了,这个变量可能会同其他代码中的全局变量发生冲突.解决的办法是将模块代码放入一个函数内部,然后立即调用这个函数.这样全局变量就变成了函数内部的局部变量: function() myModule(){ //模块代码,这个模块所用的所有变量都是局部变量,而不会污染全局命名空间 } myModule(); //立即调用这个函数 这

python协程函数、递归、匿名函数与内置函数使用、模块与包

目录: 协程函数(yield生成器用法二) 面向过程编程 递归 匿名函数与内置函数的使用 模块 包 常用标准模块之re(正则表达式) 一.协程函数(yield生成器用法二) 1.生成器的语句形式 a.生成器相关python函数.装饰器.迭代器.生成器,我们是如何使用生成器的.一个生成器能暂停执行并返回一个中间的结果这就是 yield 语句的功能 : 返回一个中间值给调用者并暂停执行. 我们的调用方式为yeild 1的方式,此方式又称为生成器的语句形式. 而使用生成器的场景:使用生成器最好的场景就

python基础-匿名函数、内置函数、正则表达式、模块

1. 匿名函数 1.1 有名函数 有名函数:定义了一个函数名,函数名指向内存地址:通过函数名进行访问.函数名加括号就可以运行有名函数,例如:func() def func(x, y, z = 1): return x + y + z print(func(1,5,2)) 1.2 匿名函数 匿名函数:没有名字的函数,定义的时候不需要函数名:定义匿名函数的关键字是:lambda 特点: 1.没有函数名 2.函数自带return 应用场景: 1.应用于一次性的地方 2.临时使用 salaries={

匿名函数、内置函数与模块

一.匿名函数 Python使用lambda来创建匿名函数,不再使用def语句这样标准的形式定义一个函数 lambda只是一个表达式,函数体比def简单很多 lambda的主体是一个表达式,而不是一个代码块.仅仅能在lambda表达式中封装有限的逻辑进去 lambda函数拥有自己的名称空间,且不能访问自有参数列表之外或全局名称空间里的参数 虽然lambda函数看起来只能写一行,却不等同于C或C++的内联函数,后者的目的是调用小函数时不占用栈内存从而增加运行效率 适合临时的一次性的使用场景 语法:

day05 协程函数,递归函数,匿名函数lambda,内置函数map reduce filter max min zip sorted,匿名函数lambda和内置函数结合使用,面向过程编程与函数编程,模块与包的使用,re模块内置函数

基础篇 本章大纲: 协程函数 递归函数 匿名函数lambda 内置函数map reduce filter  max min zip sorted 匿名函数lambda和内置函数结合使用 面向过程编程与函数编程 模块与包的使用 re模块内置函数 一,协程函数 注意:函数先定义,后使用.这是函数第一原则.函数主要分为定义,调用 1.1,什么是协程函数 协程函数特点:yield变为表达式,可以通过g.send(value)传值,用send传值时协程函数需要初始化,也可以说是生成器函数的一种 1.2,协

python第五天:协程,匿名函数,递归函数,模块导入,re模块

上节回顾 函数对象 函数可以被当成数据来传递 def func(): pass 1.可以被引用.f=fun 2.可以当做参数传递给另外一个函数 3.可以作为函数的返回值 4.可以当做容器类型的元素 比如用户有10多个参数,我们不需要写10多个if判断.可以写一个字典. dic = {'func1':func1,'func2':func2} 调用个时候就用dic['func1']() 函数的嵌套 函数的嵌套可以分为两种:嵌套定义和嵌套调用. 嵌套调用:函数的执行过程中调用其他的函数,可以更加细化的

【Python 生成器 匿名函数 递归 模块及包的导入 正则re】

一.生成器 1.定义 生成器(generator)是一个特殊的迭代器,它的实现更简单优雅,yield是生成器实现__next__()方法的关键.它作为生成器执行的暂停恢复点,可以对yield表达式进行赋值,也可以将yield表达式的值返回. 也就是说,yield是一个语法糖,内部实现支持了迭代器协议,同时yield内部是一个状态机,维护着挂起和继续的状态. yield的功能: 1.相当于为函数封装好__iter__和__next__ 2.return只能返回一次值,函数就终止了,而yield能返

python-3_函数_匿名函数_正则_yield_迭代器_序列化_内置函数_模块

L=['a','b','c','d'] for (offset,item) in enumerate(L):    print offset,item 打印的结果: 0 a1 b2 c4 d 迭代器: for i in range(100):     生成列表 for i in xrange(100)    迭代器,速度会比range快 readlines()    xreadlines() 例子: def run():    print "test1"    yield 1