Python:从入门到实践--第八章-函数-练习
#.消息:编写一个名为display_message()的函数,它打印一个句子,指出你在本章学的是什么。
#调用这个函数,确认显示的消息无误
def display_message(name):
print(name + "在本章学会了如何调用函数") display_message('我') #.喜欢的图书:编写一个名为favorite_book()的函数,其中包含一个名为title的形参
#用这个函数打印一条消息
#调用这个函数,并将一本图书的名称作为实参传递给它
def favorite_book(title):
print("\nMy favorite book is " + title) favorite_book('《活着》') print('\n')
#.T恤:编写一个名为make_shirt()的函数,它接受一个尺码以及要印到T恤上的字样
#这个函数应打印一个句子,概要地说明T恤的尺码和字样
def make_shirt(size,string):
print('T恤的尺码为:' + size + ',字样是:' + string) make_shirt('m','RNG牛逼!') print('\n')
#.修改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') #.编写一个名为city_country()的函数,它接受城市的名称及其所属的国家
#这个函数应返回这样的字符串’santigo Chile‘ def city_country(city,country):
message = city +' belong to ' + country
return message.title() cities = city_country('北京','中国')
print(cities)
cities = city_country('纽约','美国')
print(cities)
cities = city_country('巴黎','法国')
print(cities) print('\n')
#.创建一个名为make_album的函数,它创建一个描述音乐专辑的字典。
#这个函数应该接受歌手名字和专辑名,并返回一个包含这两项信息的字典
#使用这个函数创建三个不同专辑的字典,并打印每个返回的值,已核实字典正确地存储了专辑的信息
#给函数make_album()添加一个可选形参,以便能够存储专辑包含的歌曲数
#如果调用这个函数时指定了歌曲数,就将这个值添加到表示专辑的字典中。调用这个函数,并至少
#再一次调用中指定专辑包含的歌曲数。
def make_album(names,albums,number=''):
person_albums = {'name':names,'album':albums}
if number:
person_albums['number'] = number
return person_albums print(make_album('zhangyu','yu'))
print(make_album('mik','liu',))
print(make_album('nike','er')) print('\n')
#.编写一个while循环,让用户输入一个专辑的歌手和名称,获取这些信息后,使用它们来调用函数make_album()
#并将创建的字典打印出来,在这个while循环中,务必要提供退出路径
def make_album(names,albums,number=''):
person_albums = {'name':names,'album':albums}
if number:
person_albums['number'] = number
return person_albums print('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)) #.魔术师:创建一个包含魔术师名字的列表,并将其传递给一个名为show_magicians()的函数
#这个函数打印列表中每个魔术师的名字
"""
magicians_names = ['刘谦','大卫科菲尔','黑羽快斗']
def show_magicians(names):
print("Magicians' names:")
for name in names:
print(name) show_magicians(magicians_names)
"""
#.在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_magicians
new_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) #.编写一个函数,它接受顾客要在三明治中添加的一系列食材。
#这个函数只有一个形参(他搜集函数调用中提供的所有食材),并打印一条消息对顾客点的三明治进行概述
#调用这个函数三次,每次提供的不同数量的实参 def make_sandwich(*toppings):
print("The toppings of sandwich: ")
print(toppings) #make_sandwich('banana')
#make_sandwich('apple','strawberry','candy') #.用户简介:调用函数指定你的名和姓,以及三个描述你的键值对
"""
def build_profile(first,last,**user_info):
profile = {}
profile['first_name'] = first
profile['last_name'] = last
for key,value in user_info.items():
profile[key] = value
return profile user_profile = build_profile('long','xiao',location='yantai', field='IT')
print(user_profile)
"""
#.汽车:编写一个函数,将一辆汽车的信息存储在一个字典中。这个函数总是接受制造商和型号
#还接受任意数量的关键字实参。这样调用这个函数:提供必不可少的信息,以及两个名称——值对
#如颜色和选装配件。这个函数必须能够像这样进行调用:car = make_car('subaru','outback',color='blue',two_package=True) def make_car(maker,num,**car_info):
car_infos = {}
car_infos["制造商"] = maker
car_infos["型号"] = num
for key,value in car_info.items():
car_infos[key] = value
return car_infos #car = make_car('subaru','outback',color='yellow',two_package=True)
#print(car) #.导入模块的练习 """
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('','')
"""
#.导入模块的练习
"""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')"""
Python:从入门到实践--第八章-函数-练习的更多相关文章
- python从入门到实践-8章函数
#!/user/bin/env python# -*- coding:utf-8 -*- # 给形参指定默认值时,等号两边不要有空格 def function_name("parameter ...
- Python 从入门到实践 试一试 参考代码
这两天学习Python 看了python从入门到实践的书籍,里面有课后题“试一试” 然后就跟着写了,代码在以下地址,如果需要自取 https://files.cnblogs.com/files/fud ...
- Python数据分析入门与实践 ✌✌
Python数据分析入门与实践 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 这是一个数据驱动的时代,想要从事机器学习.人工智能.数据挖掘等前沿技术,都离不开 ...
- Python数据分析入门与实践
Python数据分析入门与实践 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大家看的时候可以关 ...
- 读书笔记「Python编程:从入门到实践」_8.函数
8.1 定义函数 def greet_user(): # def 来告诉Python你要定义一个函数.这是函数定义 """Hello World""& ...
- 【Python编程:从入门到实践】chapter8 函数
chapter8 函数 8.6 将函数存储在模块中 8.6.1 导入整个模块 要让函数是可导入的,的先创建模块.模块 的扩展名为.py的文件 import pizza 8.6.2 到导入特定的函数 f ...
- Python数据分析入门与实践 学习
pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库.本文是对它的一个入门教程.pandas提供了快速,灵活和富有表现力的数据结构 ...
- python从入门到实践-9章类
#!/user/bin/env python# -*- coding:utf-8 -*- # 类名采用的是驼峰命名法,即将类名中每个单词的首字母大写,而不使用下划线.# 对于每个类,都应紧跟在类定义后 ...
- Python:从入门到实践--第四章--列表操作--练习
#1.想出至少三种你喜欢的水果,将其名称存储在一个列表中,再使用for循环将每种水果的名称都打印出来. #要求:(1)修改这个for循环,使其打印包含名称的句子,而不是仅仅是水果的名称.对于每种水果, ...
随机推荐
- day26_python_1124
1.内容回顾 2.验证客户端的合法性 3.block + 进度条 4.数据的输入和输出(铺垫并发编程)(操作系统基础) 5.进程的概念+sys.argv 1.内容回顾 # udp协议 和 tcp协议 ...
- bootstrap全局样式二
加form-grope是为了以后更好的管理,一组form写一个form-grope 显示如下: 并排显示的话,给用户名前面再加一个div,再加horizontal,如下,并且加上control-lab ...
- 利用Delphi编写Socket通信程序
一.Delphi与Socket 计算机网络是由一系列网络通信协议组成的,其中的核心协议是传输层的TCP/IP和UDP协议.TCP是面向连接的,通信双方保持一条通路,好比目前的电话线,使用telnet登 ...
- 历史命令与实时记录(redhat6.8)
历史命令与实时记录(redhat6.8) linuxshell 2018年02月13日 10时58分53秒 参数 HISTTIMEFORMAT HISTSIZE HISTFILESIZE HISTFI ...
- Ubuntu中搭建强化学习平台(使用anaconda管理Python并安装tensorflow、opencv)
首先介绍一下anaconda,annoconda是一个开源的Python发行版本,里面集成了python.conda等多个科学包及其依赖项.安装完成之后,就可以使用conda版本管理器进行管理,可以让 ...
- 基本promise
function myPromise(fn) { var value = null, callbacks = []; this.then = function (onFulfilled) { call ...
- lintcode中等题目的四道题
第一题: 第一句先创建了一个解决问题的类, 第二句声明了一个公共接口的整形链表里面有N个整形数, 第三句给链表动态初始化, 第四步判断链表里的数有没有,如果N<=0则返回结果0,否则执行Prin ...
- AOP面向切面编程JAVA动态代理实现用户权限管理(实现篇)
java动态代理机制的功能十分强大,使用动态代理技术能够有效的降低应用中各个对象之间的耦合紧密程度,提高开发的效率以及程序的可维护性,事实上Spring AOP就是建立在Java动态代理的基础之上.其 ...
- Tensorflow实战系列之四:
这个是第四篇,打算写一些语义分割的内容实战.
- git pull提交代码遇到的问题
git pull 提示如下错误 解决方法: git pull 后面加上分支具体地址 比如:git pull origin daily/1.0.0 同样git push origin daily/1. ...