热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python:从入门到实践第八章函数练习

#1.消息:编写一个名为display_message()的函数,它打印一个句子,指出你在本章学的是什么。#调用这个函数,

#1.消息:编写一个名为display_message()的函数,它打印一个句子,指出你在本章学的是什么。
#调用这个函数,确认显示的消息无误
def display_message(name):print(name
+ "在本章学会了如何调用函数")display_message('')#2.喜欢的图书:编写一个名为favorite_book()的函数,其中包含一个名为title的形参
#用这个函数打印一条消息
#调用这个函数,并将一本图书的名称作为实参传递给它
def favorite_book(title):print(
"\nMy favorite book is " + title)favorite_book('《活着》')print('\n')
#
3.T恤:编写一个名为make_shirt()的函数,它接受一个尺码以及要印到T恤上的字样
#这个函数应打印一个句子,概要地说明T恤的尺码和字样
def make_shirt(size,
string):print('T恤的尺码为:' + size + ',字样是:' + string)make_shirt('m','RNG牛逼!')print('\n')
#
4.修改make_shirt()函数,使其在默认情况下制作一件印有‘I love Python'的字样
def make_shirt(size,string='I love python'):print('T恤的尺码为:' + size + ',字样是:' + string)make_shirt('m')
make_shirt(
's','I love china')#1.编写一个名为city_country()的函数,它接受城市的名称及其所属的国家
#这个函数应返回这样的字符串’santigo Chile‘def city_country(city,country):message
= city +' belong to ' + countryreturn message.title()cities = city_country('北京','中国')
print(cities)
cities
= city_country('纽约','美国')
print(cities)
cities
= city_country('巴黎','法国')
print(cities)print(
'\n')
#
2.创建一个名为make_album的函数,它创建一个描述音乐专辑的字典。
#这个函数应该接受歌手名字和专辑名,并返回一个包含这两项信息的字典
#使用这个函数创建三个不同专辑的字典,并打印每个返回的值,已核实字典正确地存储了专辑的信息
#给函数make_album()添加一个可选形参,以便能够存储专辑包含的歌曲数
#如果调用这个函数时指定了歌曲数,就将这个值添加到表示专辑的字典中。调用这个函数,并至少
#再一次调用中指定专辑包含的歌曲数。
def make_album(names,albums,number
=''):person_albums = {'name':names,'album':albums}if number:person_albums['number'] = numberreturn person_albumsprint(make_album('zhangyu','yu'))
print(make_album(
'mik','liu',10))
print(make_album(
'nike','er'))print('\n')
#
3.编写一个while循环,让用户输入一个专辑的歌手和名称,获取这些信息后,使用它们来调用函数make_album()
#并将创建的字典打印出来,在这个while循环中,务必要提供退出路径
def make_album(names,albums,number
=''):person_albums = {'name':names,'album':albums}if number:person_albums['number'] = numberreturn person_albumsprint('Enter q to quit anytime ')
while True:singer = input("Enter the name of singer:\n")if singer == 'q':break;album = input("Enter one of " + singer + "'s album\n")if album == 'q':break;print(make_album(singer,album))#1.魔术师:创建一个包含魔术师名字的列表,并将其传递给一个名为show_magicians()的函数
#这个函数打印列表中每个魔术师的名字
"""
magicians_names = ['刘谦','大卫科菲尔','黑羽快斗']
def show_magicians(names):print(
"Magicians' names:")for name in names:print(name)show_magicians(magicians_names)
"""
#2.在1中的程序,编写一个名为make_great()的函数,对魔术师列表进行修改,
#在每个魔术师的名字中都加入字样‘the Great’。调用函数show_magicians(),确认魔术师列表确实变了magicians
= ['刘谦','大卫科菲尔','黑羽快斗']
new_magicians
= []def make_great(magicians,new_magicians):while magicians:current_magicians = magicians.pop()current_magicians = 'The Great ' + current_magiciansnew_magicians.append(current_magicians)def show_magicians(new_magicians):print("Magicians' names:")for name in new_magicians:print(name)make_great(magicians[:],new_magicians)
show_magicians(magicians)
show_magicians(new_magicians)#
1.编写一个函数,它接受顾客要在三明治中添加的一系列食材。
#这个函数只有一个形参(他搜集函数调用中提供的所有食材),并打印一条消息对顾客点的三明治进行概述
#调用这个函数三次,每次提供的不同数量的实参def make_sandwich(
*toppings):print("The toppings of sandwich: ")print(toppings)#make_sandwich('banana')
#make_sandwich(
'apple','strawberry','candy')#2.用户简介:调用函数指定你的名和姓,以及三个描述你的键值对
"""
def build_profile(first,last,**user_info):profile = {}profile['first_name'] = firstprofile['last_name'] = lastfor key,value in user_info.items():profile[key] = valuereturn profileuser_profile = build_profile('long','xiao',location='yantai', field='IT')
print(user_profile)
"""
#3.汽车:编写一个函数,将一辆汽车的信息存储在一个字典中。这个函数总是接受制造商和型号
#还接受任意数量的关键字实参。这样调用这个函数:提供必不可少的信息,以及两个名称——值对
#如颜色和选装配件。这个函数必须能够像这样进行调用:car
= make_car('subaru','outback',color='blue',two_package=True)def make_car(maker,num,**car_info):car_infos = {}car_infos["制造商"] = makercar_infos["型号"] = numfor key,value in car_info.items():car_infos[key] = valuereturn car_infos#car = make_car('subaru','outback',color='yellow',two_package=True)
#print(car)#
1.导入模块的练习"""
import parameter_delivery
parameter_delivery.make_sandwich(
'candy','apple','banana')
car_info
= parameter_delivery.make_car('bwm','98k',color='red',price='100万')
print(car_info)
"""

"""
from parameter_delivery import make_sandwich
make_sandwich(
'sala','milk')
"""

"""
from parameter_delivery import make_sandwich as ms
ms(
'strawberry','applr')
"""

"""
import parameter_delivery as pd
pd.make_sandwich(
'hahaha','lalala')
"""

"""
from parameter_delivery import *
car_info
= make_car('bwn','98k')
print(car_info)
make_sandwich(
'666','250')
"""
#1.导入模块的练习
"""import parameter_deliveryparameter_delivery.make_sandwich('candy','apple','banana')car_info = parameter_delivery.make_car('bwm','98k',color='red',price='100万')print(car_info)"""
"""from parameter_delivery import make_sandwichmake_sandwich('sala','milk')"""
"""from parameter_delivery import make_sandwich as msms('strawberry','applr')"""
"""import parameter_delivery as pdpd.make_sandwich('hahaha','lalala')"""
"""from parameter_delivery import *car_info = make_car('bwn','98k')print(car_info)make_sandwich('666','250')"""

 

转:https://www.cnblogs.com/geeker-xjl/p/10635274.html



推荐阅读
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • Java 11相对于Java 8,OptaPlanner性能提升有多大?
    本文通过基准测试比较了Java 11和Java 8对OptaPlanner的性能提升。测试结果表明,在相同的硬件环境下,Java 11相对于Java 8在垃圾回收方面表现更好,从而提升了OptaPlanner的性能。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 本文整理了Java面试中常见的问题及相关概念的解析,包括HashMap中为什么重写equals还要重写hashcode、map的分类和常见情况、final关键字的用法、Synchronized和lock的区别、volatile的介绍、Syncronized锁的作用、构造函数和构造函数重载的概念、方法覆盖和方法重载的区别、反射获取和设置对象私有字段的值的方法、通过反射创建对象的方式以及内部类的详解。 ... [详细]
  • SQL Server 2008 到底需要使用哪些端口?
    SQLServer2008到底需要使用哪些端口?-下面就来介绍下SQLServer2008中使用的端口有哪些:  首先,最常用最常见的就是1433端口。这个是数据库引擎的端口,如果 ... [详细]
  • UMTS基础知识汇总
    协议框架23G接口UMTS实体EntityNameDescriptionAuCAuthenticationCenterCBCCellBroadcastCenterC-RNCCon ... [详细]
author-avatar
kei_herme
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有