Day 21 三元表达式、生成器函数、列表解析
知识点程序:
#! /usr/bin/env python
# -*- coding: utf-8 -*-
# __author__ = "DaChao"
# Date: 2017/6/16 l = [i for i in range(100) if i%2 > 0]
print(l) ###########################
#生成器 generator!!! 模拟tail grep功能
########################### # import time
# def tail(filepath,encoding="utf-8"):
# with open(filepath,encoding=encoding) as f:
# f.seek(0,2)
# while True:
# line = f.readline()
# if line:
# # print("line")
# yield line
# else:
# time.sleep(0.5)
#
# g = tail("a.txt")
# for i in g:
# print(i) # # tail("a.txt")
# def grep(lines,pattern):
# for line in lines:
# if pattern in line:
# print(line)
# # # # for i in g:
# # print(g)
# g1 = grep(g,"error")
#
# g2 = grep(g1,"404")
# #
# for line in g2:
# print(line) ###########################
#生成器 generator!!! yield 的重复使用
########################### # def countdown(n):
# print("start")
# while n > 0:
# yield n
# n -= 1
# print("end")
#
# g = countdown(5) # print(g)
# print(g.__next__())
# print(g.__next__())
# print(g.__next__())
# print(g.__next__())
# print(g.__next__())
# print(g.__next__())
#
# for i in g:
# print(i) ###########################
#生成器 带有yield
########################### # def foo():
# print("1111111")
# yield 1
# print("222222222")
# yield 2
# print("33333333")
# yield 3
#
# g = foo()
#
# for i in g: #obj = g.__iter__() #obj,__next__
# print(i) # print(g.__next__())
# print(g.__next__())
# print(g.__next__())
# print(g.__next__())
###########################
#生成器函数
########################### # def lay_eggs(num):
# '''
# 存鸡蛋!
# :param num:
# :return:
# '''
# egg_list = []
# for egg in range(num):
# egg_list.append("egg%s" %egg)
# return egg_list # yikuangdan = lay_eggs(10)
# for i in yikuangdan: #下蛋
# print(i) # def lay_eggs1(num):
# for egg in range(num):
# res = "egg%s" %egg
# yield res
# print("Egg +")
#
# laomuji = lay_eggs1(10)
# print(laomuji)
# print(laomuji.__next__())
# print(laomuji.__next__())
# print(laomuji.__next__())
# print(laomuji.__next__())
# egg_l = list(laomuji)
# print(egg_l) ##########################
#迭代器
########################### # d = {"a":1,"b":2,"c":3}
#
# obj = d.__iter__()
#
# while True:
# try:
# i = obj.__next__()
# print(i)
# except StopIteration:
# break
Day 21 三元表达式、生成器函数、列表解析的更多相关文章
- python学习Day12 函数的默认值、三元表达式、函数对象(函数名)的应用场景、名称空间与作用域
复习 1.字符串的比较: -- 按照从左往右比较每一个字符,通过字符对应的ascii进行比较 2. 函数的参数 : 1)实参与形参: -- 形参:在函数定义时()中出现的参数 ...
- day21 生成器,列表解析,三元表达式
Python之路,Day9 = Python基础9 判断可迭代对象和迭代器 from collections import Iterable, Iterator # 导入模块功能,用来判断对象是否为I ...
- python之生成器(~函数,列表推导式,生成器表达式)
一.生成器 概念:生成器的是实质就是迭代器 1.生成器的贴点和迭代器一样,取值方式也和迭代器一样. 2.生成器一般由生成器函数或者声称其表达式来创建,生成器其实就是手写的迭代器. 3.在python中 ...
- Python基础(8)_迭代器、生成器、列表解析
一.迭代器 1.什么是迭代 1 重复 2 下次重复一定是基于上一次的结果而来 l=[,,,] count= while count < len(l): print(l[count]) count ...
- Python--day12(三元表达式、函数对象、名称空间与作用域、函数嵌套定义)
今日主要内容 1. 函数默认值细节(*) 2. 数据类型补充:三元表达式.列表推导式.字典推导式 (***) 3. 函数对象:函数名的各种应用场景 (*****) 4. 名称空间与作用域:解释 ...
- python基础之生成器,生成器函数,列表推导式
内容梗概: 1. 生成器和生成器函数. 2. 列表推导式. 1.生成器函数1.1 生成器函数. 就是把return换成yield def gen(): print("爽歪歪") y ...
- Day05:装饰器,三元表达式,函数的递归,匿名/内置函数,迭代器,模块,开发目录
上节课复习:1.函数的对象 函数可以被当作数据取处理2.函数嵌套 嵌套调用:在调用一个函数时,函数体代码又调用了其他函数 嵌套定义:在一个函数内部又定义了另一个函数 def foo( ...
- Day13有参装饰器,三元表达式,匿名函数
多个装饰器: 加载顺序:由下而上 执行顺序:由上而下 有参装饰器: 闭包,给函数传参的一种方法 当装饰器内需要参数时,可以采用闭包形式给其传参,第三层函数接收完参数时,就变为无参装饰器 三元表达式: ...
- python全栈开发-Day12 三元表达式、函数递归、匿名函数、内置函数
一. 三元表达式 一 .三元表达式 仅应用于: 1.条件成立返回,一个值 2.条件不成立返回 ,一个值 def max2(x,y): #普通函数定义 if x > y: return x els ...
随机推荐
- matplotlib学习记录 二
# 绘制10点到12点的每一分钟气温变化折线图 import random from matplotlib import pyplot as plt # 让matplotlib能够显示中文 plt.r ...
- POJ:1330-Nearest Common Ancestors(LCA在线、离线、优化算法)
传送门:http://poj.org/problem?id=1330 Nearest Common Ancestors Time Limit: 1000MS Memory Limit: 10000K ...
- 数学基础:HUD1124-Factorial(N!末尾0的个数)
Factorial Problem Description The most important part of a GSM network is so called Base Transceiver ...
- 牛客练习赛22 C 简单瞎搞题
//位运算 // & 都是1 才是 1 // | 都是0 才是0 // ^ 不一样才是1 #include <iostream> #include <cstdio> # ...
- re--findall 【转】
原文链接 python re 模块 findall 函数用法简述 代码示例: >>> import re >>> s = "adfad asdfasdf ...
- RHEL6.X设置163yum源
目录 RHEL6.X设置163yum源 卸载系统的yum 检查是否已经卸载完成 下载yum以及相关包 安装yum相关rpm包 清除原有缓存,建立yum列表 本地yum源设置 挂载本地光盘 修改配置文件 ...
- Xampp 配置出现403无法访问
找到\xampp\apache\conf\httpd.conf配置文件 Access forbidden! You don’t have permission to access the reques ...
- 常用软件URL
1.MSDN:https://msdn.itellyou.cn/ 2.软碟通(UltraISO)http://rj.baidu.com/soft/detail/11522.html?ald Ultra ...
- jqery实现一个图标上下滑动效果
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- Leetcode 482.密钥格式化
密钥格式化 给定一个密钥字符串S,只包含字母,数字以及 '-'(破折号).N 个 '-' 将字符串分成了 N+1 组.给定一个数字 K,重新格式化字符串,除了第一个分组以外,每个分组要包含 K 个字符 ...