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('[root@V1 ~ ]# ').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()

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

  1. python 中的匿名函数lamda和functools模块

    为什么 要把匿名函数和functools模块写在一起? 因为 lamda函数和functools模块都是对函数一种增强或者是简化. 匿名函数: 为了解决那些功能很简单的需求而设计一次性的需求函数 #& ...

  2. Python基础-列表推导式、匿名函数、os/sys/time/datetime/pymysql/xlwt/hashlib模块

    列表推导式 [表达式 for 变量 in range(n) if 条件]  等效于 for 变量 in in range(n): if 条件: 表达式 优点:书写方便,缺点:不易读 注意:用的是方括号 ...

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

    目录: 协程函数(yield生成器用法二) 面向过程编程 递归 匿名函数与内置函数的使用 模块 包 常用标准模块之re(正则表达式) 一.协程函数(yield生成器用法二) 1.生成器的语句形式 a. ...

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

    1. 匿名函数 1.1 有名函数 有名函数:定义了一个函数名,函数名指向内存地址:通过函数名进行访问.函数名加括号就可以运行有名函数,例如:func() def func(x, y, z = 1): ...

  5. Python3基础(4)匿名函数、装饰器、生成器、迭代器、内置函数、json&pickle序列化、软件目录开发规范、不同目录间模块调用

    ---------------个人学习笔记--------------- ----------------本文作者吴疆-------------- ------点击此处链接至博客园原文------ 1 ...

  6. Python基础之yield,匿名函数,包与re模块

    一.表达式形式的yield 1.另外一种形式的yield def deco(func): def wrapper(*arges, **kwargs): res = func(*arges, **kwa ...

  7. python基础:函数传参、全局变量、局部变量、内置函数、匿名函数、递归、os模块、time模块

    ---恢复内容开始--- 一.函数相关: 1.1位置参数: ef hello(name,sex,county='china'): pass #hello('hh','nv') #位置参数.默认参数 1 ...

  8. Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fabric模块

    Python第十五天  datetime模块 time模块   thread模块  threading模块  Queue队列模块  multiprocessing模块  paramiko模块  fab ...

  9. Python第七天 函数 函数参数 函数里的变量 函数返回值 多类型传值 函数递归调用 匿名函数 内置函数

    Python第七天   函数  函数参数   函数里的变量   函数返回值  多类型传值     函数递归调用   匿名函数   内置函数 目录 Pycharm使用技巧(转载) Python第一天   ...

随机推荐

  1. (转) Windows下MySQL免安装版的下载与配置

    本人在尊重原著的前提下.针对在实践中所遇到的问题加以整理和完善,如有不足之处,还请各位大神指点江山O(∩_∩)O~ 主要是因为平时自己学习时候会用到.及免安装版本的方便.对于个人开发者挺实用的! 安装 ...

  2. node.js 实现 AES CTR 加解密

    node.js 实现 AES CTR 加解密 node aesctr 前言 由于最近我们在做一款安全的文件分享 App, 所有文件均需要使用 aes ctr 来进行加密,aes key 还有一整套完整 ...

  3. 流式布局和viewport

    流式布局 百分比布局,非固定宽度,内容向两边填充,流动的布局. viewport(视口) PC端的网页在手机端的浏览器显示是不会出现网页的,这是因为移动端的网页不是直接放在移动端的浏览器中,而是放在移 ...

  4. Python之网路编程进程理论基础

    背景知识 顾名思义,进程即一个软件正在进行的过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老的也是最重要的抽象概念之一.操作系统的其他 ...

  5. python基础31[python IDE之Eclipse+PyDev]

    一 入门IDE作为python的初学者,在语法和类库学习阶段,我们可以使用以下简单使用的IDE:1) Python SDK 自带的IDEL(Python GUI)2) Komodo-Edit3) No ...

  6. 机器学习降维--lu分解

  7. CMDB表结构设计

    服务器 内存.cpu.disk.nic.raid.sn.model.os.status. disk_info = { } SERVER001 storage .... NET001 网络设备 eth ...

  8. 浅谈Java回收对象的标记和对象的二次标记过程_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 一.对象的标记 1.什么是标记?怎么标记? 第一个问题相信大家都知道,标记就是对一些已死的对象打上记号,方便垃圾收集器的 ...

  9. 使用linq将2个Datatable合并

    DataTable dtStepX = new DataTable("dtStepX"); DataTable dtStepS = new DataTable("dtSt ...

  10. teradata安装

    一,下载 步骤1 - 从链接下载所需的VM版本,http://downloads.teradata.com/download/database/teradata-express-for-vmware- ...