python函数介绍
1、向函数传递信息
def greet_user(username):
print('Hello,' + username.title() + '!')
greet_user('jesse')

2、位置实参
def greet_user(animal_type,pet_name):
print('\nI have a' + animal_type + '.')
print('My' + animal_type + 'name is' + pet_name.title() + '.')
greet_user('hamster','harry')

调用函数多次,可以根据调用的函数任意次
def greet_user(animal_type,pet_name):
print('\nI have a' + animal_type + '.')
print('My' + animal_type + 'name is' + pet_name.title() + '.')
greet_user('hamster','harry')
greet_user('dog','wille')

3、关键字实参
关键字实参是传递给函数的名称--值对。因些向函数传递实参时不会混淆。关键字实参让你无需考虑函数调用中的实参顺序。
def greet_user(animal_type,pet_name):
print('\nI have a' + animal_type + '.')
print('My' + animal_type + 'name is' + pet_name.title() + '.')
greet_user(animal_type='hamster',pet_name='harry')
greet_user(pet_name='harry',animal_type='hamster')

注意:使用关键字实参时,务必准确地指定函数定义中的形参名。
4、返回值
函数并非总是直接显示输出,相反,它可以处理一些数据,并返回一个或一组值。函数返回的值被称为返回值。在函数中,可使用return语句将值返回到调用函数的代码行。返回值让你能够将程序的大部分繁重工作移到函数中去完成,从而简化主程序。
4.1 返回简单值
def get_formatted(first_name,last_name):
full_name=first_name + ' ' + last_name
return full_name.title()
musician =get_formatted('jimi','hendrix')
print(musician)

4.2 让实参变的可选
def get_formatted(first_name,last_name,midddle_name=''):
if midddle_name:
full_name=first_name + ' '+ midddle_name + ' ' + last_name
else:
full_name=first_name + ' ' + last_name
return full_name
musician=get_formatted('jimi','hendirx')
print(musician)
# musician=get_formatted('john','hooker','lee')
# print(musician)
4.3 返回字典
def build_person(first_name,last_name):
person={'first':first_name,'last':last_name}
return person
musician=build_person('jimi','hendrix')
print(musician)

可选形参:
def build_person(first_name,last_name,age=''):
person={'first':first_name,'last':last_name}
if age:
person['age']=age
return person
musician=build_person('jimi','hendrix',age=27)
print(musician)

5、结合使用函数和while循环
def get_formatted(first_name,last_name):
full_name=first_name+ ' ' + last_name
return full_name.title()
while True:
print('\n pls tell me your name:')
print("(enter 'q' at any time to quit)")
f_name=input('First name:')
if f_name=='q':
break
l_name=input('Last name:')
if l_name=='q':
break
formatted=get_formatted(f_name,l_name)
print('\nHello,' + formatted + '!')

6、传递列表
usernames=['hannah','ty','margot']
def greet_users(username):
for name in username:
msg='Hello,' + name.title()
print(msg)
greet_users(usernames)

python函数介绍的更多相关文章
- Python开发【第三章】:Python函数介绍
一. 函数介绍 1.函数是什么? 在学习函数之前,一直遵循面向过程编程,即根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复 ...
- Python 函数介绍
函数的作用 1.减少重复代码 2.方便修改,更易扩展 3.保持代码一致性 函数的命名规则: 1.函数名必须以下划线或字母开头,可以包含任意字母,数字或下划线的组合,不能使用任何的标点符号. 2.函数名 ...
- 3 Python 函数介绍
1.函数的基本概念 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 减少重复代码 使程序变的可扩展 使程序变得易维护 语法定义 def ...
- Python函数(1)
一.Python函数介绍 函数时组织好的,可重复的,用来实现单一,或相关联功能的代码段. 函数的使用原则时先定义,后调用:事先准备工具的过程即函数的定义,遇到应用场景拿来当工具用即函数的调用. 函数的 ...
- python strip()函数 介绍
python strip()函数 介绍,需要的朋友可以参考一下 函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm) 删除s字符串中开头.结尾处,位于 rm删除 ...
- python中multiprocessing.pool函数介绍_正在拉磨_新浪博客
python中multiprocessing.pool函数介绍_正在拉磨_新浪博客 python中multiprocessing.pool函数介绍 (2010-06-10 03:46:5 ...
- python基础3之文件操作、字符编码解码、函数介绍
内容概要: 一.文件操作 二.字符编码解码 三.函数介绍 一.文件操作 文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 基本操作: #/usr/bin/env ...
- Python的常用内置函数介绍
Python的常用内置函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.取绝对值(abs) #!/usr/bin/env python #_*_coding:utf-8_ ...
- python 函数参数介绍
python 函数参数介绍 python 使用过程总,总会遇到 *args,**kw形式的参数,总是一头雾水,而且网上介绍的或是叫法不一,为此专门深入实践进而了解了函数参数的使用 具体请看代码 #-* ...
随机推荐
- MetadataType的使用,MVC的Model层数据验证
MetadataType的使用,MVC的Model层数据验证 指定要与数据模型类关联的元数据类 using System.ComponentModel.DataAnnotations; //指定要 ...
- MYSQL查询数据库表索引的硬盘空间占用
查询数据库的占用 SELECT CONCAT(ROUND(SUM(index_length)/(1024*1024), 2), ' MB') AS 'Total Index Size' , CONCA ...
- python - pip 从已有的安装列表 安装
已经安装好的机器:sudo pip freeze > install_list.list 需要安装的机器:sudo pip install -r install_list.list
- 【转】iOS-延迟操作方法总结
原文网址:http://lysongzi.com/2016/01/30/iOS-%E5%BB%B6%E8%BF%9F%E6%93%8D%E4%BD%9C%E6%96%B9%E6%B3%95%E6%80 ...
- hashCode之一--两个对象值相同,有相同的hash code
两个对象值相同(x.equals(y) == true),则一定有相同的hash code. 这是java语言的定义: 因为:Hash,一般翻译做“散列”,也有直接音译为"哈希" ...
- SQL Server 高性能写入的一些总结(转)
1.1.1 摘要 在开发过程中,我们不时会遇到系统性能瓶颈问题,而引起这一问题原因可以很多,有可能是代码不够高效.有可能是硬件或网络问题,也有可能是数据库设计的问题. 本篇博文将针对一些常用的数据库性 ...
- web安全测试&渗透测试之sql注入~~
渗透测试概念: 详见百度百科 http://baike.baidu.com/link?url=T3avJhH3_MunEIk9fPzEX5hcSv2IqQlhAfokBzAG4M1CztQrSbwsR ...
- 通过简单的Linux内核启动程序代码窥探操作系统的启动原理
作者:吴乐 山东师范大学 <Linux内核分析> 孟宁 MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.程序设计与分析 ...
- Top 5 Free Screen Recording Softwares For Windows
[转]Top 5 Free Screen Recording Softwares For Windows 该文章是转过来的,因为这里介绍了好几款免费的录制视频的软件.我自己需要使用,也许大家也有需求. ...
- 我用dedecms有感
---恢复内容开始--- 最近接了一个私单,简单的学校网站,注意,我一看上去是感觉很快,仿站,对方说这个东西你三天就能搞定啦,我也这么想的 (没经验啊) 接下来,我想都没想就用dedecms去做,之前 ...