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

# 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. 安装Fedora后

    更新操作系统版本: https://fedoraproject.org/wiki/DNF_system_upgrade    靠谱: 设置ssh:ssh生成公钥私钥.默认root(.ssh/confi ...

  2. 使用Charles设置https代理到http以及证书安装(服务端篇)

    1.下载ssl证书到[登录],并且设置证书[始终信任] 2.SSL Proxying设置,Location为*,可以抓全部接口的https请求 参考:https://www.jianshu.com/p ...

  3. 前端的构建化工具Webpack

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

  4. 使用Java窗口程序执行输入的任何cmd命令

    利用Java窗口程序来执行用输入的任何命令 实现效果: Java桌面窗口,输入框.按钮,当输入框被输入命令的时候,点击按钮执行命令! 实现代码 package com.remote.remote.ag ...

  5. 理解Redis的反应堆模式

    1. Redis的网络模型 Redis基于Reactor模式(反应堆模式)开发了自己的网络模型,形成了一个完备的基于IO复用的事件驱动服务器,但是不由得浮现几个问题: 为什么要使用Reactor模式呢 ...

  6. UML组件图

    组件图用于可视化在一个系统中的物理组件.这些组件包括库,程序包,文件等. 组件图 = 构件(Component)+接口(Interface)+关系(Relationship)+端口(Port)+连接器 ...

  7. iOS开发tips-PhotoKit

    概述 PhotoKit应该是iOS 8 开始引入为了替代之前ALAssetsLibrary的相册资源访问的标准库,后者在iOS 9开始被弃用.当然相对于ALAssetsLibrary其扩展性更高,ap ...

  8. web前端之css基础

    CSS选择器 元素选择器 p{color:red;} ID选择器 #li{ background-color:red; } 类选择器 .c1{ font-size:15px; } 注意: 样式类名不要 ...

  9. Java类的定义与类的实例化

    目录 Java类的定义与类的实例化 类的定义 定义一个简单的类 定义一个成员变量 定义一个方法 定义一个构造器 类的实例化 创建对象及使用对象: 创建对象的过程在内存中的表现 Java类的定义与类的实 ...

  10. 2019-11-6:ubuntu 18安装tomcat 9.0

    1,下载tomcat,选择自己想要的版本下载即可 下载官网:http://tomcat.apache.org/ 2,将下载的源码放到自己需要的位置,解压,我新建了一个tomcat目录 sudo mkd ...