zoukankan      html  css  js  c++  java
  • python笔记5

    1 迭代器
    fucs = {"tes":22,"sss":1,"sfafa":223}
    obj = func.iter()
    obj.next()

    2 生成器
    1 提供一种迭代器的方式
    2 与return相比,可以取多指
    例子

    def my_range(start,stop,step=1):
        while start < stop:
            yield start
            start += step
    #返回生成器的对象
    res=my_range(1,1000,2)
    ##调用next方法
    for item in res:
        print(item)
    
    生成器 sender的方法
     def dog(name):
    print("{}sss".format(name))
    while True:
        yield name
        print("ssss{}..{}".format(name,name))
    
    dog_orb = dog("alex")
    ##next(obj) 可以用 boj.send(None) 需要将函数停到yield处
    dog_orb.__next__()
    for i in range(1,10):
        dog_orb.send("{} is alex".format(i))
    
     ##
     def dog(name):
    print("{}sss".format(name))
    while True:
        food = yield name
        print("ssss{}..{}".format(food,name))
    food = yield name(food为用户send传送的值,name为返回值)
    

    3 3元表达式
    names = ["egg","bbb","sss","sssa"]
    dd = [len(i) for i in names if not i.endswith("bb")]
    print(dd)

    4 匿名表达式
    salies = {
    "aa":111,
    "bb":2222,
    "cc":33333,
    "dd":100
    }
    def func(k):
    return salies[k]

    key传递 函数,,在max中是比较的对象,由于max就是个for循环

    print(max(salies,key = func ))

    print(max(salies,key = lambda x:salies[x]))

    5 import 导入
    all = ["test","sss"] 控制的是from test import *的 *能够导入的函数

  • 相关阅读:
    ios10 获取idfa的坑
    iOS 获取手机sim卡的运营商(移动,电信,联通) 相关信息
    iOS获取手机IP地址
    UIScrollView 与 touchesBegan 冲突解决方法
    32位与64位基础
    MySQL数据库基础_表&简单查询
    MySQL数据库基础
    Java_File、递归
    Java_lambda表达式
    Java线程锁,等待唤醒和线程池
  • 原文地址:https://www.cnblogs.com/liuqimin/p/8997449.html
Copyright © 2011-2022 走看看