用map来处理字符串列表

用map来处理字符串列表,把列表中所有水果都变成juice,比方apple_juice

  fruits=['apple','orange','mango','watermelon']

fruits=['apple','orange','mango','watermelon']
def func(fruit):
return fruit+'_juice'
f = map(func,fruits)
print(list(f))

匿名函数实现:

fruits=['apple','orange','mango','watermelon']
print(list(map(lambda fruit:fruit+'_juice',fruits)))

用filter函数处理数字列表

用filter函数处理数字列表,将列表中所有的偶数筛选出来

  num = [1,3,5,6,7,8]

num = [1,3,5,6,7,8]
def func(x):
return x%2 == 0
l = filter(func,num)
print(list(l))

匿名函数实现:

num = [1,3,5,6,7,8]
print(list(filter(lambda x:x%2 == 0,num)))
# print(list(filter(lambda x:True if x%2 == 0 else False,num)))

随意写一个20行以上的文件...

如题

随意写一个20行以上的文件
运行程序,先将内容读到内存中,用列表存储;
接收用户输入页码,每页5条,仅输出当页的内容。

简单实现:

with open('file',encoding='utf-8') as f:
line = f.readlines()
pages,left = divmod(len(line),5)#pages-->拥有五行的总页数,left-->余下一页的行数
page_num = int(input('请输入页码(整数):'))
if page_num <= 0 or page_num > pages+1:
print('页码不存在')
elif page_num > 0 and page_num <= pages:
for i in range(5):
print(line[(page_num-1)*5+i].strip())
else:
for i in range(left):
print(line[(page_num - 1) * 5 + i].strip())

   

升级版(交互式)

with open('file',encoding='utf-8') as f:
line = f.readlines()
pages,left = divmod(len(line),5)#pages-->拥有五行的总页数,left-->余下一页的行数
while True:
page_num = input('请输入页码(Q退出case-insensitive):')
if page_num.lower() == 'q':
print('阅读结束')
break
else:
if page_num.isdigit():
page_num = int(page_num)
if page_num <= 0 or page_num > pages + 1:
print('页码不存在')
print('请重新输入')
continue
elif page_num > 0 and page_num <= pages:
for i in range(5):
print(line[(page_num-1)*5+i].strip())
continue
else:
for i in range(left):
print(line[(page_num - 1) * 5 + i].strip())
continue
else:
print('请输入整数')
continue

如下,每个小字典的name对应股票名字...

如题

如下,每个小字典的name对应股票名字,shares对应多少股,price对应股票的价格

#如下,每个小字典的name对应股票名字,shares对应多少股,price对应股票的价格
portfolio = [
{'name': 'IBM', 'shares': 100, 'price': 91.1},
{'name': 'AAPL', 'shares': 50, 'price': 543.22},
{'name': 'FB', 'shares': 200, 'price': 21.09},
{'name': 'HPQ', 'shares': 35, 'price': 31.75},
{'name': 'YHOO', 'shares': 45, 'price': 16.35},
{'name': 'ACME', 'shares': 75, 'price': 115.65}]
# 1.计算购买每支股票的总价
# 2.用filter过滤出,单价大于100的股票有哪些

1.计算购买每支股票的总价

def func(dic):
return {dic['name']:dic['shares']*dic['price']}
r = map(func,portfolio)
print(list(r))

  匿名函数改进

print(list(map(lambda dic:{dic['name']:round(dic['shares']*dic['price'],2)},portfolio)))

2.用filter过滤出,单价大于100的股票有哪些

def func(dic):
return dic['price'] > 100
r = filter(func,portfolio)
print(list(r))

  匿名函数实现

print(list(filter(lambda dic:dic['price'] > 100,portfolio)))

pass

python学习日记(内置、匿名函数练习题)的更多相关文章

  1. Python学习日记(十二) 匿名函数

    匿名函数: 未解决一些简单的需求而设计的函数 语法: func = lambda x : x**2 func:函数名 lambda:类似def的关键字 x:参数 x**2:返回值表达式 适用内置函数: ...

  2. python学习交流 - 内置函数使用方法和应用举例

    内置函数 python提供了68个内置函数,在使用过程中用户不再需要定义函数来实现内置函数支持的功能.更重要的是内置函数的算法是经过python作者优化的,并且部分是使用c语言实现,通常来说使用内置函 ...

  3. Python descriptor 以及 内置property()函数

    Python Descriptor  1, Python Descriptor是这样一个对象 它按照descriptor协议, 有这样的属性之一 def __get__(self, obj, type ...

  4. Python学习(七)——匿名函数、map函数、filter函数、reduce函数与其他内置函数

    匿名函数 lambda x: x + 1 # lambda:定义匿名函数的关键字 # x:形参 # x+1:程序处理逻辑 fun = lambda x: x + 1 print(fun(5)) #6 ...

  5. Python学习之==>内置函数、列表生成式、三元表达式

    一.内置函数 所谓内置函数就是Python自带的函数 print(all([0,2,3,4])) #判断可迭代的对象里面的值是否都为真 print(any([0,1,2,3,4])) #判断可迭代的对 ...

  6. python学习之--内置函数:

    Python内置函数: Python内置了很多有用的函数,我们可以直接调用.要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数. 1. 内置函数调用之--abs()函数: ...

  7. python学习总结----内置函数及数据持久化

    抽象基类(了解) - 说明: - 抽象基类就是为了统一接口而存在的 - 它不能进行实例化 - 继承自抽象类的子类必须实现抽象基类的抽象方法 - 示例: from abc import ABC, abs ...

  8. python学习之- 内置函数

    内置方法:1:abs():取绝对值2:all():当可迭代对象里所有均为真时结果为真. all([1,2,3])3:any():当可迭代对象里任意一个数据为真结果即为真.any([0,1,2])4:a ...

  9. Python学习(5)——内置函数

    常用字符串内置函数 1)str.count() //返回该字符串中某个子串出现的次数 2)str.find() //返回某个子串出现在该字符串的起始位置 3)str.lower() //将该字符串全部 ...

  10. python学习-31 内置函数

    内置函数 1.abs()  绝对值 2.all()    判断列表里的所有值的布尔值(如果迭代列表里的每个值后都是True 则返回True) '])) 运行结果: True Process finis ...

随机推荐

  1. Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式

    Python第三天 序列  5种数据类型  数值  字符串  列表  元组  字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell ...

  2. 一文把samba相关的都说清楚

    1.前言 samba源码都一样,配置也也一样,各个不同linux版本,唯一不同的是对服务的启动方式不同.下面以ubuntu14.4为例,说明. 2. 安装samba samba的安装,可以源码安装,大 ...

  3. Canadian-dollar_RMB

    import pandas as pd import matplotlib.pyplot as plt import statsmodels as sm from statsmodels.graphi ...

  4. Think_in_java_4th(并发学习二)

    使用Executor java.util.concurrent CachedThreadPool package concurrency.ExecutorService; //: concurrenc ...

  5. 网络编程_tcp与dup协议简单应用

    老师的博客:http://www.cnblogs.com/Eva-J/articles/8066842.html 计算机网络基础 :http://www.cnblogs.com/Eva-J/artic ...

  6. 【English 】20190319

     BOKO鼻子['boʊkoʊ] pores毛孔['pɔ:z] cute漂亮可爱[kjut] DEKO-BOKO pores don't make a girl cute! ideal最理想的[aɪˈ ...

  7. zookeeper的分布式锁

    实现分布式锁目前有三种流行方案,分别为基于数据库.Redis.Zookeeper的方案,其中前两种方案网络上有很多资料可以参考,本文不做展开.我们来看下使用Zookeeper如何实现分布式锁. 什么是 ...

  8. 压力测试Apache

    在做类似商城秒杀系统的同事都知道要在支持高并发,高可用的环境下进行多次的压力测试来防止自己的项目结构被高额的点击量击穿,导致商品超卖等损失 介绍一款简单的软件 xampp xam里带了Apache服务 ...

  9. 理解MySQL数据库事务

    1. 什么是事务处理? 事务处理是一种机制,它是用来管理必须成批执行的mysql操作.来保证数据库不完整的操作结果. 2. 为什么要使用事务处理? 在使用mysql操作数据的过程中,如果只是简单的中小 ...

  10. nginx 配置文件的结构

    1.nginx.conf的主要部分 events { } http { server { location path { ... } location path { ... } } server { ...