# test1
def greet_user():print("hello")
greet_user()# test2
def greet_user(username):#形参print(f"hello,{username.title()}")
greet_user("name")#实参# test3
def display(text):print(f"我在本章学的是{text}")
display("函数")# test4
def favorite_book(book):print(f"one of my favorite book is {book}")
favorite_book("alice in wonderland")# test5传递多个位置实参
def discribe_name(type,name):print(f"type is {type}")print(f"name is {name}")
discribe_name("dog","pet")# test6传递多个关键字实参,指定各个实参对应的形参
def discribe_name(type,name):print(f"type is {type}")print(f"name is {name}")
discribe_name(type="dog",name="pet")# test7:给每个形参指定默认值,必须先给出没有默认值的形参
def discribe_name(name,type='dog'):print(f"type is {type}")print(f"name is {name}")
discribe_name(name="pet")#test8
def make_t(size,text):print(f"size is {size},name is {text}")
make_t("m","fish")# test9
def make_lt(size,text = "I love T"):print(f"size is {size},text is {text}")
make_lt("s")
make_lt("m")
make_lt("l")# test10
def get_formated_name(first_name,last_name):full_name = f"{first_name}{last_name}"return full_name.title()#首字母大写格式
musican = get_formated_name('jimi','hendrix')
print(musican)# test11,让参数变成可选的,处理中间名为空的情况
def get_formated_name(first_name,middle_name,last_name):if middle_name:full_name = f"{first_name}{middle_name}{last_name}"else:full_name = f"{first_name}{last_name}"return full_name.title()#首字母大写格式
musican = get_formated_name('jimi','hendrix','end_name')
print(musican)musican = get_formated_name('jimi','end_name')
print(musican)# test12 返回字典
def build_person(first_name,last_name):person  = {'first':first_name,'last':last_name}return person
musican1 = build_person('yu','fish')
print(musican1)test13 结合函数使用while循环,设置截至输入的条件
def get_formated_name(first_name,last_name):full_name = f"{first_name}{last_name}"return full_name.title()#首字母大写格式
while True:print("\nplace tell me you name:")print("enter q at any time to quit")f_name = input("first_name")if f_name == 'q':breakl_name = input("last_name")if l_name == 'q':breakformated_name = get_formated_name(f_name,l_name)print(f"hello,{formated_name}")# test14
def city_country(country,city):city_name = f"{country}{city}"return city_name
name1 = city_country("cn","kunming")
print(name1)
name2 = city_country("UN","CO")
print(name2)# test15,数量是可选的,因此把设置成空字符串,放在最末尾
def make_album(name1,name2,num = ''):if num :#判断是否有值是这么写的album = f"song name is {name1},album name is {name2},mumber is {num}"else:album = f"song name is {name1},album name is {name2}"return album
album1 = make_album(name1='周杰伦',name2 = '烟花易冷')
print(album1)# test16  注意字符串一定要用引号
def make_album(name1,name2):album = f"song name is {name1},album name is {name2}"return album
while True:print("input q at any time to quit")song_name = input("请输歌手名:")if song_name == 'q':breakalbum_name = input("请输入歌曲名:")if album_name== 'q':breakname = make_album(song_name,album_name)print({name})# test17 传递列表
def greet_user(names):for user in names:print(f"hello,{user}")
names = ['张三','李四','王五']
greet_user(names)# test18在函数中修改列表
unprinted_designs = ['phone_case','robot pendant','dodecachedron']
completed_models =[]while unprinted_designs:curent_design = unprinted_designs.pop()print(f"printing model:{curent_design}")completed_models.append(curent_design)
print("\nthe following modul have been printed:")
for complated_model in completed_models:print(complated_model)# test19传递任意数量的实参,让topping创建一个名为toppings的空元组
# 并将收到的值都封装到这个元组中
def make_pizza(*toppings):"""打印客户点的所有配料:param toppings::return:"""for top in toppings:print(top)
make_pizza('pep')
make_pizza('mushrooms','green pep','extra chees')# test20 结合使用位置实参和任意数量的实参
# python先匹配位置实参和关键字实参,再将余下的实参都收集到一个形参中
def make_pizza(size,*topping):print(f"making a {size}-inch pizza with the following toppings:")for top in topping:print(f"{top}")
make_pizza(16,'pop')
make_pizza(20,'pep','pop')# test21,使用任意数量的关键字形参,*是元组,**是字典
# 输出:{'loc': 'c', 'age': 'd', 'first_name': 'a', 'last_name': 'b'}
def biuld_profile(first,last,**user_info):user_info['first_name'] = firstuser_info['last_name'] = lastreturn user_info
user_profile = biuld_profile('a','b',loc = 'c',age = 'd')
print(user_profile)# test22
def make_san(*san):for s in san:print(s)
make_san('草莓味','香蕉味','榴莲味')
make_san('橘子味')#test23
# 输出:{'loc': 'dali', 'money': '1000000000', 'name': 'fish', 'age': '15'}
def my_info(name,age,**my_info):my_info['name'] = namemy_info['age'] = agereturn my_info
my = my_info('fish','15',loc = 'dali',money = '1000000000')
print(my)# test24
# 输出:{'money': '20w', 'price': '100w', 'maker': 'CN', 'size': '20W'}
def car_info(maker,size,**car):car['maker']  = makercar['size'] = sizereturn car
my_car = car_info('CN','20W',money = '20w',price = '100w')
print(my_car)

python-函数模块基础语法复习相关推荐

  1. python导入模块的语法结构_python学习第五讲,python基础语法之函数语法,与Import导入模块....

    python学习第五讲,python基础语法之函数语法,与Import导入模块. 一丶函数简介 函数,就是一个代码块,这个代码块是别人写好的.我们调用就可以. 函数也可以称为方法. 1.函数语法定义 ...

  2. python基础语法复习[二] 函数、类

    python基础语法复习[二] 前言 一.函数 1.基本概念 2.一般实例 3.参数传递 (1)传不可变对象 (2)传可变对象 4.函数递归调用实例 (1)eg:实现字符串的反转: (2)递归思想画树 ...

  3. python编程语法大全-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 关于怎么快速学python,可以加下小编的python学习群:611+530+101,不管你是小白还是大牛,小编我都欢迎,不定期分享干货 每天 ...

  4. python编程语法-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_num ...

  5. python编程if语法-Python编程入门基础语法详解经典

    原标题:Python编程入门基础语法详解经典 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_number = ...

  6. python编程语法-Python编程入门——基础语法详解(经典)

    今天小编给大家带来Python编程入门--基础语法详解.温馨提示: 亮点在最后! 在这里还是要推荐下我自己建的Python开发学习群:301056051,群里都是学Python开发的,如果你正在学习P ...

  7. python基础语法及知识总结-Python 学习完基础语法知识后,如何进一步提高?

    ---4.30更新---感谢大家支持,点赞都破两千了.给大家整理出来新的资料,需要的小伙伴来自取: Python练手项目视频如下: Python自学基础知识如下: 以下为原文内容: Python 学习 ...

  8. python基础编程语法-Python编程入门——基础语法详解

    今天小编给大家带来Python编程入门--基础语法详解. 一.基本概念 1.内置的变量类型: Python是有变量类型的,而且会强制检查变量类型.内置的变量类型有如下几种: #浮点 float_num ...

  9. python基础编程语法-Python编程入门——基础语法详解(经典)

    今天小编给大家带来Python编程入门--基础语法详解.温馨提示: 亮点在最后! 在这里还是要推荐下我自己建的Python开发学习群:301056051,群里都是学Python开发的,如果你正在学习P ...

最新文章

  1. Scrapy爬取IT之家
  2. hdu 2518 Dominoes
  3. 【运维人员应该掌握哪些常用技术】
  4. multipart/form-data和application/x-www-form-urlencoded的区别
  5. OpenCV2:图像滤波基础
  6. Spring MVC 的xml一些配置
  7. 【学习笔记】产品成本计划(Product Cost Planning)02
  8. vue路由权限(结合服务端koa2)
  9. linux 查看网卡是否万兆_linux 如何查看网卡带宽
  10. ubuntu三种添加环境变量的方法
  11. xyplorer保存设置失败_将windows右键菜单添加到XYplorer
  12. Cobbler实现自动化安装操作系统
  13. 常用推荐算法(50页干货)
  14. Kconfig 和 Kbuild
  15. Adobe(R) Flash(R) Player 安装失败.有关故障排除的提示,请访问 httpwww.adobe.comgotn_19166_cn
  16. python中itertools模块zip_longest函数详解
  17. 搞定分布式系列:缓存 热key 问题解决方案
  18. (一)MQTT+阿里云实现设备>云,云>设备之间的通信。
  19. 计算机二级pptword建立大纲级别,计算机等级考试二级Office考点汇总!(PPT篇)...
  20. 小学计算机教师用书,九年义务教育小学教科书-信息技术(第五册)(教师用书).pdf...

热门文章

  1. C语言:二维数组中的查找
  2. 清华大学计算机科学陈莉,2014年清华大学博士研究生拟录取名单公示
  3. 威武的word Blog
  4. linux ftp进程,LinuxFTP ftp服务器设计成为一个守护进程 - 下载 - 搜珍网
  5. 安科瑞厂家至直销 母线监控装置AMB100-A 独立辅助电流供电
  6. OpenCL编程(1)- 开发环境搭建(NVIDIA GPU+Win10篇)
  7. IOS--UIImageView--帧动画
  8. 后缀自动机(SAM)讲解 + Luogu p3804【模板】后缀自动机 (SAM)
  9. Distributed System: Naming Service (命名服务)
  10. 数值分析3-解线性方程组的高斯消去法、LU分解法及列主元消去法的matlab程序和调试方法