1、利用字典推导式和列表推导式完成数据的相互转化:

dic = {'name': 'Owen', 'age': 18, 'gender': '男'}
ls = [('name', 'Owen'), ('age', 18), ('gender', '男')] dic=[(k,v) for k,v in dic.items()]
ls={k: v for k, v in ls}

2、用生成器实现可以无限取值的生成器对象,第一次取值得到1,第二次取值得到3,第三次取值得到6,第四次取值得到10,依次类推

def fn2():
total = 0
count = 1
while True:
total += count
yield total
count += 1
obj = fn2()
print(obj.__next__())
print(obj.__next__())
print(obj.__next__())
print(obj.__next__())

3、利用递归完成斐波那契数列案例:1、1、2、3、5、8、13、21初始1只兔子,1个月成熟,次月往后每月可以生出1只,每只兔子成熟后都具有繁殖能力,问一年半后一共有多少只兔子

def func(depth,k1,k2):
if depth > 18:
return k1
k3=k1+k2
res=func(depth+1,k2,k3)
return res
ret=func(1,0,1)
print(ret)  

4、利用map函数完成成绩映射 [58, 78, 98] => ['不通过', '通过', '通过'] 用到匿名函数,匿名函数的返回值用三元运算符处理

a=map(lambda x: str(x) + '通过' if x > 60 else  str(x) + '不通过' ,[58, 78, 98])
for i in a:
print(i)

5、利用reduce求[58, 78, 98]的总成绩

from functools import reduce
res=reduce(lambda a,b: a + b, [58, 78, 98])
print(res)

6、打印数字128的二进制、八进制、十六进制数

print(bin(128))
print(oct(128))
print(hex(128))

7、解决第7题求总成绩还可以用什么内置函数,输出13的7次幂的结果用什么内置函数,判断一个变量是否是函数对象的内置函数,原义字符串的内置函数

print(sum([58, 78, 98]))
print(pow(13,7))
callable(func) 

8.写出for迭代器迭代字符串、列表、元组、集合、字典(三种情况)的代码实现

# Pyhon列表
list_a = [, , , , , , , , , ]
# Pyhon元组
tuple_a = (, , , , , , , , , )
# Python字典
dict_a = {'a': , 'b': , 'c': } # 可迭代对象的父类
from collections import Iterable
# 判断列表、元组、字典是否是可迭代对象
print(isinstance(list_a, Iterable),
isinstance(tuple_a, Iterable),
isinstance(dict_a, Iterable))
# 迭代列表
for i in list_a:
print(i)
# 迭代列表,顺带获得索引了
for i, v in enumerate(list_a):
print(i, v)
# 迭代字典中的值
for value in dict_a.values():
print(value)
# 迭代字典中的键和值
for k, v in dict_a.items():
print(k, v)
# 迭代由元组作为元素组成的列表
for x, y in [(, ), (, ), (, )]:
print(x, y)

9、用生成器完成自定义的my_range方法,可以实现和range类似的功能:

my_range(5) => 能迭代出0,1,2,3,4
my_range(5, 10) => 能迭代出5,6,7,8,9
my_range(5, 10,2) => 能迭代出5,7,9
my_range(10, 5, -2) => 能迭代出10, 8, 6
my_range(10, 5) => 没结果
my_range(5, 10, -1) => 没结果  

代码:

def my_range(start,end=,step=):
count=
if end == and step == :
while count < start:
yield count
count +=
elif (end > and end > start) and step == :
while start < end:
yield start
start +=
elif (end > and end > start) and step > :
while start < end:
yield start
start += step
elif (end > and end < start) and step < :
while end < start:
yield start
start += step
elif (end > and end < start) and step > :
pass
elif (end > and end > start) and step < :
pass for i in my_range(,,-):
print(i)

 

Python课程第五天作业的更多相关文章

  1. Python课程笔记 (五)

    今天主要学习图形用户界面,更多的还是要我们自己去实际操作,课仿佛上了一半就完了,分享一下课程(这里在SixthClass)的源码: https://gitee.com/wang_ming_er/pyt ...

  2. Python课程第三天作业

    一.统计⽂件数据中出现的的所有字符与该字符出现的个数(不区分⼤⼩写,标点与空格也算) ⽂件内容: hello friend, can you speak English! # 结果: { 'h': 1 ...

  3. Python课程第四天作业

    1.定义一个函数,该函数可以实现控制台输入,最终返回一个int类型的正整数 def chr_to_int(): user_input = input('请输您要转换的字符串:') if user_in ...

  4. 第五次作业——python效能分析与几个问题(个人作业)

    第五次作业--效能分析与几个问题(个人作业) 前言 阅读了大家对于本课程的目标和规划之后,想必很多同学都跃跃欲试,迫不及待想要提高自身实践能力,那么就从第一个个人项目开始吧,题目要求见下. 阅读 阅读 ...

  5. 17秋 SDN课程 第五次上机作业

    17秋 SDN课程 第五次上机作业 Project:https://github.com/Wasdns/new_balance Slide is available at https://github ...

  6. Java课程设计——博客作业教学数据分析系统(201521123082 黄华林)

    Java课程设计--博客作业教学数据分析系统(201521123082 黄华林) 一.团队课程设计博客链接 博客作业教学数据分析系统(From:网络五条狗) 二.个人负责模块或任务说明 1.网络爬虫 ...

  7. Python学习第五堂课

    Python学习第五堂课推荐电影:华尔街之狼 被拯救的姜哥 阿甘正传 辛德勒的名单 肖申克的救赎 上帝之城 焦土之城 绝美之城 #上节内容: 变量 if else 注释 # ""& ...

  8. C语言基础课第五次作业

    PTA第五次作业 7-2 统计一行文本中的单词个数 一.程序代码 #include<stdio.h> int main(void) { ]; ,word=; char c; gets(st ...

  9. 17秋 软件工程 团队第五次作业 Alpha Scrum1

    题目:团队作业--Alpha冲刺 17秋 软件工程 团队第五次作业 Alpha Scrum1 各个成员在 Alpha 阶段认领的任务 伟航:督促和监督团队进度,协调组内合作 港晨:APP前端页面编写: ...

随机推荐

  1. 复习string和数组

    两种实例化方式的区别 1)直接赋值(String str = "hello"):只开辟一块堆内存空间,并且会自动入池,不会产生垃圾. 2)构造方法(String str=  new ...

  2. 校园管家(Android开发团队项目)NABCD

    N(Need)需求: 现如今数据越来越零碎化,繁杂化,身为在校大学生的我们也因此对于时间的利用率也相应减少,为了时间的充分利用,减少在冗杂的信息中耽误的时间,充分利用大学资源,因此我们打算做一个专门发 ...

  3. C++实验四

    // 类graph的实现 #include "graph.h" #include <iostream> using namespace std; // 带参数的构造函数 ...

  4. fdsafdsafds

    name1 = input('请输入一个名字:') name2 = input('请输入一个名字: ') animal = input('请输入一个名字 :') print('刚按完摩的{}出门看见{ ...

  5. java 你画我猜 了解一下

    0-设计思路: 你画我猜顾名思义,有一个人画,一个人猜,两个思路: 1)一个中央服务器,中转数据,两个client端:,a画对应点的数据通过服务器发给客户端b,b通过这些数据进行绘画,换颜色人,等等, ...

  6. Java技术开发程序员如果在2019年立足

    2019年的互联网环境相对以往来说要更复杂一些,互联网领域也正在经历从消费互联网向产业互联网转型的阵痛期.其实不少公司从2018年开始已经在陆续进行结构化调整,这些调整中的重要内容就是岗位调整,而岗位 ...

  7. Yii2 设计模式——设计模式简介

    我们首先来思考一个问题:作为工程师,我们的价值是什么? 笔者认为是——解决用户问题. 我们的任何知识和技能,如果不能解决特定的问题,那么就是无用的屠龙之术:我们的任何经验,如果不能对解决新的问题有用, ...

  8. Taro 常用 API

    table th:first-of-type { width: 300px; } Taro 常用 API 说明 网址 Taro.getSystemInfoSync() 获取系统信息同步接口. http ...

  9. 利用Pluggable Protocol实现浏览器打开本地应用程序

    https://www.cnblogs.com/liushaofeng89/archive/2016/05/03/5432770.html

  10. PHP swoole实现redis订阅和发布

    前戏:实现用户下单,服务器通知后台接收订单...类似美团外卖 1.首先要实现一个订阅程序 $result = $client->connect('127.0.0.1', 6379, functi ...