栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【周周Python基础题】Day3~熟练使用几个重要的内置函数

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【周周Python基础题】Day3~熟练使用几个重要的内置函数

目录

写在前面

题目一

        解析

        答案

题目二

        解析

        答案

️题目三

        ️解析

        ️答案

题目四

        解析

        答案

 总结


写在前面

本篇博客主要向各位小伙伴们介绍的Python经典例题<几个重要的内置函数的使用>,带各位掌握Python基础,希望各位小伙伴们能够在这里收获到更多知识!让我们一起学习!一起进步!

题目一

用map来处理字符串列表name=['lisa','wu,'yua','zhou'],把列表中所有人,都变成名字加‘_nb’,比方lisa_nb 

解析

写这道题之前需要掌握内置map函数,匿名函数,以及各种列表推导式的使用

答案

基础版:

name=['lisa','jadd','yua','mike']
def func(li):
    li = li+'_nb'
    return li
ret = map(func,name)
name = [i for i in ret]
print(name)

进阶版:

name=['lisa','jadd','yua','mike']
ret = map(lambda li :li+'_nb',name)
name = [i for i in ret]
print(name)

输出结果:

题目二

用filter函数处理数字列表,将列表num = [1,3,5,6,7,8]中所有的偶数筛选出来

解析

写这题之前需要掌握内置函数filter、列表、匿名函数、列表推导式的使用方法

答案

​
num = [1,3,5,6,7,8]
res = filter(lambda x:x%2 == 0,num)
num2 = [i for i in res]
print(num2)

​

输出结果:

️题目三

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

️解析

写此题之前需要掌握内置函数divmod、if条件语句的使用

️答案

with open('01--昨日作业',encoding='utf8') as f:
    l = f.readlines()
    print(l)        #查看文件'01--昨日作业'中含有的内容
page_num = int(input('请输入你要查看的页码 :'))
pages,mod = divmod(len(l),5)       #page表示一共有的页数,mod表示还剩的行数(五行为一页)
if mod:                            #判断是否还剩有行数
    pages += 1                     #不满五行也算一页
if page_num > pages:               #判断输入的页数是否超出总页数
    print('你输入的页码有误')
elif page_num == pages and mod != 0:
    for i in range(mod):
        print(l[(page_num-1)*5 + i].strip())
else:
    for i in range(5):
        print(l[(page_num-1)*5 + i].strip())

输出结果:

题目四

如下,每个小字典的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’ :'YHO0'.' shares': 45. 'price’: 16.35},
    {’name’:'ACME’,'shares’: 75,'price': 115.65}
]

(1)、计算购买每支股票的总价
(2)、用filter过滤出,单价大于100的股票有哪些
 

解析

写此题需要掌握 字典的基础知识,内置函数filter的基本使用方法

答案

(1)答案:

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' :'YHO0','shares': 45, 'price': 16.35},
    {'name':'ACME','shares': 75,'price': 115.65}
]

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

输出结果: 

(2)答案:

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' :'YHO0','shares': 45, 'price': 16.35},
    {'name':'ACME','shares': 75,'price': 115.65}
]

#第一种方法
ret2 = filter(lambda dic:True if dic['price']>100 else False,portfolio)
print(list(ret2))
#第二种方法
ret3 = filter(lambda dic:dic['price']>100,portfolio)
print(list(ret3))

输出结果:

 总结

这几个题目主要考的是重要内置函数map、filter的使用方法,同时掌握匿名函数的基本语法,能够在实际问题灵活使用,其中匿名函数的语法是:

 好了今天的分享结束了,我们“明天见”。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/971231.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号