# 函数
# 实现了某一特定功能。
# 可以重复使用。

# len() 功能:获取长度。
# input() 功能: 控制台输入
# print() 功能:输出

# 语法 关键字def
"""
def 函数名称():
#实现功能的代码块。
"""

# 伞
# 定义功能。
def car():
print("出行功能!!")

# 调用功能 = 执行函数的代码。
"""
函数名称()
"""
# car() # 先定义再调用。
# car() # 先定义再调用。
# car() # 先定义再调用。
# car() # 先定义再调用。
# car() # 先定义再调用。
# car() # 先定义再调用。

# 高铁、灰机。
# 出行功能:需要输入的数据:身份证、飞机票,起点,目的地。否则用不了功能。
# def out_going():
# print("请出示身份证,飞机票")
# id = "123456789001122"
# ticket = "TTYYC12"
# if id is not None and ticket is not None:
# print("请上飞机。")
#
# # bear
# out_going() #使用的时候,应该是把身份证和飞机票,传到这个函数里。
# # 寓次方
# out_going()

# 使用的时候,应该是把身份证和飞机票,传到这个函数里。
# 定义
def out_going_v2(id,ticket): #形式参数,接收具体的数值。会变!! 变量来表示。用,隔开。
print("请出示身份证,飞机票")
# id = "123456789001122"
# ticket = "TTYYC12"
print(id,ticket)
if len(id) != 18:
print("身份证不符合要求!!")
if id is not None and ticket is not None:
print("请上飞机。")

# out_going_v2("123456789001122","TTYYC12") #实参 = 具体的数值。
# out_going_v2("12345672233441112345","TTYYC33")
# out_going_v2("123456722334411",None)

# 1、位置参数(必传,定义的时候没有数值。) 形参和实参的参数顺序是一一对应的。

# 2、默认参数。定义函数时,给形参一个默认的具体数值。
# 可传可不传。 默认参数要放在所有的必传参数之后。
# 定义
def out_going_v3(id,ticket,enter="上海",gate=15): #形式参数 变量来表示。用,隔开。
enters = ["上海","北京","深圳"]
print("请出示身份证,飞机票")
# id = "123456789001122"
# ticket = "TTYYC12"
print(id,ticket,enter,gate)
if len(id) != 18:
print("身份证不符合要求!!")
elif enter not in enters:
print("当前城市 尚未开放 机场!!")
elif id is not None and ticket is not None:
print("请上飞机。")

out_going_v3("12345672233441112345","TTYYC33") #不传默认参数
out_going_v3("12345672233441112345","TTYYC33","北京") #传值
out_going_v3("12345672233441112345","TTYYC33",gate=25) #指定参数

# 3、指定参数 调用的时候去指定 形参=数据。
# 调用的时候,全部参数,形参=值。可以不按位置的顺序来传参。
print("========================================")
out_going_v3(ticket="TTYYC33",id="12345672233441112345",gate=25) #指定参数

# 4、可变参数\return

python学习-def的更多相关文章

  1. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  2. Python学习--01入门

    Python学习--01入门 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.和PHP一样,它是后端开发语言. 如果有C语言.PHP语言.JAVA语言等其中一种语言的基础,学习Py ...

  3. python学习之路 第五天

    1.装饰器: #!/usr/bin/env python3 user_status = False #用户登录了就把这个改成True def login(auth_type): #把要执行的模块从这里 ...

  4. Python 学习小结

    python 学习小结 python 简明教程 1.python 文件 #!/etc/bin/python #coding=utf-8 2.main()函数 if __name__ == '__mai ...

  5. Python学习记录day6

    title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ...

  6. Python学习记录day5

    title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函 ...

  7. python学习笔记系列----(八)python常用的标准库

    终于学到了python手册的最后一部分:常用标准库.这部分内容主要就是介绍了一些基础的常用的基础库,可以大概了解下,在以后真正使用的时候也能想起来再拿出来用. 8.1 操作系统接口模块:OS OS模块 ...

  8. python学习心得第三章

    python学习心得第三章 1.三元运算 变量=值1 if 条件 else 值2 由图如果条件成立则赋值1给变量,如果条件不成立则赋值2给变量. 2.数据类型 集合:set() class set(o ...

  9. 记录Python学习中的几个小问题

    记录Python学习中的几个小问题,和C#\JAVA的习惯都不太一样. 1.Django模板中比较两个值是否相等 错误的做法 <option value="{{group.id}}&q ...

随机推荐

  1. 领扣(LeetCode)找树左下角的值 个人题解

    给定一个二叉树,在树的最后一行找到最左边的值. 示例 1: 输入: 2 / \ 1 3 输出: 1 示例 2: 输入: 1 / \ 2 3 / / \ 4 5 6 / 7 输出: 7 注意: 您可以假 ...

  2. java常用简略语含义

    首先这些对象都应用都是一些单词的简称,也是一种应用思想,故其他语言也可以使用,在Java里比较常见这些对象吧.下面来一一解释. 一.POJO(Plain Ordinary Java Object). ...

  3. Centos7安装redis5.0.7

    1. 安装依赖包 yum install -y gcc gcc-c++ 2. 下载最新版redis安装包并解压安装 cd /usr/local/src wget http://download.red ...

  4. 前端的构建化工具Webpack

    经常看到如jquery-3.0.0.js和jquery-3.0.0-min.js等两相似的文件名. 其实以上两个文件名的内容是一样的,不过带min代表的是占用最小的空间,为项目提高性能.压缩的部分如换 ...

  5. python selenium框架的Xpath定位元素

    我们工作中经常用到的定位方式有八大种:id name class_name tag_name link_text partial_link_text xpath css_selector 本篇内容主要 ...

  6. jinjia2

    ansible-playbook --become --become-method=su -K copy.yml - hosts: web remote_user: ansible tasks: - ...

  7. startup启动不起来关于监听的问题

    问题描述:要在sqlplus中启动到startup状态,但是提示我没有监听,本来以为启动一下就可以,但是connecting to一直卡半天,stop都停止不了 1.发现监听有问题,前去更改 SQL& ...

  8. UCloud 云服务内容审核 Java 版本实现

    前言 最近不少小伙伴反映上传小黄图偶尔性的异常,并且不能上传动态图片,很是苦恼!无她,鉴黄API还没有这么智能,毕竟是自己训练的,不是那么专业!为了更好的服务广大网友,撸主决定接入更加智能快速的鉴黄服 ...

  9. 图解 Spring:HTTP 请求的处理流程与机制【1】

    2003 年,老兵哥初到中兴开始研究生实习,Spring 就是那年诞生的,2004 年 3 月发布了 1.0 版本,到现在已经超过 15 年了.从单体式分层架构到云原生微服务架构,它稳坐在 JAVA ...

  10. 记一次uboot中gunzip解压速度慢的问题排查

    背景 在项目中需要用到解压功能,之前还记录了下,将uboot解压代码移植到另外的bootloader中时,碰到的效率问题.最终查明是cache的配置导致的. https://www.cnblogs.c ...